forked from jnode/jnode
-
Notifications
You must be signed in to change notification settings - Fork 0
ISO9660
opencode-agent[bot] edited this page May 10, 2026
·
1 revision
The ISO-9660 standard for CD-ROM filesystems, implemented in JNode's
org.jnode.fs.iso9660plugin.
ISO-9660 is an international standard filesystem for CD-ROM media. JNode provides read/write support through its ISO-9660 filesystem plugin.
| File | Purpose |
|---|---|
fs/src/fs/org/jnode/fs/iso9660/ISO9660FileSystem.java |
Main filesystem implementation |
fs/src/fs/org/jnode/fs/iso9660/ISO9660FileSystemType.java |
Filesystem type factory |
fs/src/fs/org/jnode/fs/iso9660/ISO9660Volume.java |
Volume descriptor parsing |
fs/src/fs/org/jnode/fs/iso9660/ISO9660Directory.java |
Directory entry handling |
fs/src/fs/org/jnode/fs/iso9660/ISO9660File.java |
File entry handling |
fs/src/fs/org/jnode/fs/iso9660/ISO9660Entry.java |
Base entry class |
fs/src/fs/org/jnode/fs/iso9660/EntryRecord.java |
Directory record parsing |
fs/src/fs/org/jnode/fs/iso9660/Descriptor.java |
Volume descriptor base class |
fs/src/fs/org/jnode/fs/iso9660/PrimaryVolumeDescriptor.java |
Primary volume descriptor |
fs/src/fs/org/jnode/fs/iso9660/SupplementaryVolumeDescriptor.java |
Supplementary volume descriptor |
fs/src/fs/org/jnode/fs/iso9660/VolumeDescriptor.java |
Volume descriptor wrapper |
fs/src/fs/org/jnode/fs/iso9660/ISO9660DTime.java |
Date/time structure |
fs/src/fs/org/jnode/fs/iso9660/ISO9660Constants.java |
Constants (volume types, separators) |
The ISO-9660 filesystem begins with a sequence of volume descriptors:
- Boot Record (type 0) — Bootable system information
- Primary Volume Descriptor (type 1) — Main volume metadata
- Supplementary Volume Descriptor (type 2) — Joliet extension support
- Partition Descriptor (type 3) — Volume partition information
- Volume Descriptor Set Terminator (type 255) — End of descriptor sequence
ISO-9660 uses a root directory entry at sector 16 (for standard media). Directory entries contain:
- Length of Directory Record (LENGTH)
- Extended Attribute Record Length (EATR)
- Location of Extent (LBA)
- Data Length of Extent (size)
- Recording date/time
- File flags (directory, hidden, etc.)
- Filename (8.3 format: NAME.EXT;VERSION)
JNode's ISO-9660 implementation:
- Supports ISO-9660 Level 1 (8.3 filenames, ASCII only)
- Supports ISO-9660 Level 2 (up to 31 character filenames)
- Parses both primary and supplementary volume descriptors
- Implements directory iteration via
ISO9660Directory - Provides file access via
ISO9660File
- Boot-CD-ROM-Builder — How ISO images are created during build
- FileSystemType — Filesystem plugin interface
- VFS-Layer — Virtual filesystem layer