Talk:ISO 9660

From OSDev Wiki
Jump to navigation Jump to search

Proposals for enhancements

I am the developer of xorriso, which produces bootable ISO 9660 images. Here are some proposals after reading this wiki page. I am ready to implement them here. But first i ask whether such changes would be appreciated.


"Filenames must be in the 8.3 format":

ECMA-119 filenames may be longer than 8.3 format. And they should bear ";" and a File Version Number.

ECMA-119 7.5 "File Identifier" says:

 The sum of the following shall not exceed 30:
 * if there is a File Name, the length of the File Name;
 * if there is a File Name Extension, the length of the File Name Extension.

ECMA-119 10 "Levels of Interchange", prescribes a maximum of 8 characters for File Name and 3 for File Name Extension only for Level 1. Levels 2 and 3 allow the sum of 30.


"The Boot Record" should refer to http://wiki.osdev.org/El-Torito See its Talk page for my proposals there.

Currently the OSDev wiki has a gap between Boot Record and the boot images which lead the firmware into boot loaders resp. operating systems. The Boot Catalog should be described in the wiki page about El-Torito.

But one should mention here that bytes 71 to 74 tell the 2 kB block number of the Boot Catalog as little-endian 32 bit number. (There is no big-endian copy of that number.)


One should mention that the first 32 KiB of an ISO 9660 image are called System Area and may store arbitrary data. For example it is possible to have a Master Boot Record (MBR, for BIOS) and a GUID Partition Table (GPT, for EFI) for booting the ISO image from USB stick or hard disk.


One should mention the existence of Rock Ridge (for POSIX and more) and Joliet (for MS-Windows names in UCS-2 characters). It seems better to keep ISO 9660:1999 a secret ...

Rock Ridge (RRIP) is implemented as ECMA-119 System Use data in ECMA-119 Directory Records. Its general format is specified by the System Use Sharing Protocol (SUSP).

 ftp://ftp.ymi.com/pub/rockridge/susp112.ps
 ftp://ftp.ymi.com/pub/rockridge/rrip112.ps

Joliet is implemented as separate tree of Directory Records. Its root Directory Record is stored in a Supplementary Volume Descriptor.

 http://www.buildorbuy.org/pdf/joliet.pdf

Scdbackup 03:55, 15 October 2013 (CDT)

Thanks for the info. If you get a chance, please could you go ahead and make the appropriate changes to this page (and any others) as you see fit as you are presumably one of the people with the most experience of CD filesystems around here. John 00:18, 18 October 2013 (CDT)
Done now. I broke it down into several smaller changes.
I propose to remove the "In Progress" mark at the start of the page.
It is now quite comprehensive. Deeper details would make it
a tutorial for implementing producers and readers of ISO 9660.
The article about Joliet is a stub with a link that leads to
a russian language site. I will think about how to connect it
to this article about ISO 9660.
Scdbackup 03:55, 18 October 2013 (CDT)