[haiku-bugs] Re: [Haiku] #8473: Concerns about ISO 9660 implementation

  • From: "scdbackup" <trac@xxxxxxxxxxxx>
  • Date: Mon, 16 Apr 2012 11:46:15 -0000

#8473: Concerns about ISO 9660 implementation
-------------------------------------+----------------------------
   Reporter:  scdbackup              |      Owner:  nobody
       Type:  enhancement            |     Status:  new
   Priority:  normal                 |  Milestone:  R1
  Component:  File Systems/ISO 9660  |    Version:  R1/Development
 Resolution:                         |   Keywords:
 Blocked By:                         |   Blocking:
Has a Patch:  0                      |   Platform:  All
-------------------------------------+----------------------------

Comment (by scdbackup):

 I produced
 https://dev.haiku-os.org/attachment/ticket/8473/file_of_4gb.iso.bz2
 to demonstrate a file with more than one extent:
 {{{
 $ ls -l aaa file_of_4gb zzz
 -rw-r--r-- 1 thomas thomas          4 2012-04-16 13:07 aaa
 -rw-r--r-- 1 thomas thomas 4297064448 2012-04-16 13:00 file_of_4gb
 -rw-r--r-- 1 thomas thomas          4 2012-04-16 13:07 zzz
 $ xorriso -outdev file_of_4gb.iso -add aaa file_of_4gb zzz --
 $ bzip2 file_of_4gb.iso
 }}}

 The sequence of directory records bears these ISO 9660 file identifiers:
 {{{
 AAA.;1
 FILE_OF_4GB.;1
 FILE_OF_4GB.;1
 ZZZ.;1
 }}}

 The data blocks of these file are
 {{{
 Report layout: xt , Startlba ,   Blocks , Filesize , ISO image path
 File data lba:  0 ,       55 ,  2097151 , 4297064448 , '/file_of_4gb'
 File data lba:  1 ,  2097206 ,     1025 , 4297064448 , '/file_of_4gb'
 File data lba:  0 ,  2098231 ,        1 ,        4 , '/aaa'
 File data lba:  0 ,  2098232 ,        1 ,        4 , '/zzz'
 }}}
 (Rock Ridge names are listed rather than ECMA-119 identifiers.)

 "file_of_4gb" actually has 4098 MiB to produce a non-pathetic second
 extent.
 Each of its 2 KiB blocks bears at its start the number of its megabyte in
 ASCII decimal digits.  So the block content changes only every full MiB.
 (When i gave each block its own number as content, the file could not be
 compressed beyond 2.3 MB.)

 ----------------------------------------------------------------------

 I have re-read ECMA-119 about the sequence of directory records of large
 files.

 According to 9.3 the records are sorted by their file identifiers.
 These identifiers are identical for all extents (File Sections) of a file.
 So the record of extent N + 1 of a file must directly follow the record of
 extent N.

 Further i learned it is "directory record" rather than "directory entry".

-- 
Ticket URL: <http://dev.haiku-os.org/ticket/8473#comment:6>
Haiku <http://dev.haiku-os.org>
Haiku - the operating system.

Other related posts: