ISO 9660

редактировать
Файловая система для оптических дисков CD-R и CD-ROM

ISO 9660
Разработчик (и) Ecma International
ВариантыRock Ridge, Joliet, El Torito, Apple ISO 9660 Extensions, ISO 13490
Введен1988 г.; 32 года назад (1988 г.)
Пределы
Макс. размер тома4 ГиБ
Другое
Поддерживаемые операционные системы Кросс-платформенный

ISO 9660 - это файловая система для оптического диска СМИ. Файловая система, продаваемая Международной организацией по стандартизации (ISO), считается международным техническим стандартом. Поскольку спецификации доступны для приобретения, реализации были написаны для многих операционных систем.

Содержание
  • 1 История
  • 2 Технические характеристики
    • 2.1 Общая структура
    • 2.2 Набор дескрипторов тома
      • 2.2.1 Дескриптор тома
    • 2.3 Каталоги и файлы
    • 2.4 Таблицы путей
  • 3 Ограничения
    • 3.1 Ограничение глубины каталога
    • 3.2 Ограничение размера файла 2/4 ГиБ
    • 3.3 Ограничение на количество каталогов
  • 4 Расширения и улучшения
  • 5 Образы дисков
  • 6 Поддержка операционной системы
  • 7 См. также
  • 8 Ссылки
  • 9 Внешние ссылки
История

ISO 9660 уходит своими корнями в файловую систему High Sierra Format. В High Sierra информация о файлах упорядочена в плотном последовательном формате для минимизации непоследовательного доступа за счет использования иерархической (восемь уровней каталогов в глубину) древовидной структуры файловой системы, аналогичной UNIX и FAT. Чтобы облегчить кросс-платформенную совместимость, он определил минимальный набор общих атрибутов файла (каталог или обычный файл и время записи) и атрибутов имени (имя, расширение и версия), а также использовал отдельную область использования системы, где будущие дополнительные расширения для каждого файл может быть указан.

High Sierra была принята в декабре 1986 года (с изменениями) в качестве международного стандарта Ecma International как ECMA-119 и представлена ​​для ускоренного отслеживания в ISO, где в конечном итоге он был принят как ISO 9660: 1988.

В 2013 году ISO опубликовал поправку 1 к стандарту ISO 9660, вводя новые структуры данных и смягченные правила имен файлов, предназначенные для «гармонизации между ISO 9660 и широко используемыми» Joliet Спецификация ». В декабре 2017 года было опубликовано 3-е издание ECMA-119, которое технически идентично ISO 9660, поправка 1.

В 2020 году ISO опубликовала поправку 2, которая добавляет некоторые незначительные уточняющие моменты, но не добавляет или исправьте любую техническую информацию стандарта.

Технические характеристики

Общая структура

Ниже приводится приблизительная общая структура файловой системы ISO 9660:

Файловая система ISO 9660
Системная область (32768 Б)Не используется ISO 9660
Область данных
Набор дескрипторов тома
Таблицы путей, каталоги и файлы

Системная область, первые 32768 данных байт диска (16 секторов по 2048 байтов каждый) не используется по стандарту ISO 9660 и поэтому доступен для других целей. Например, компакт-диск может содержать альтернативный дескриптор файловой системы в этой области, поскольку он часто используется гибридными компакт-дисками, чтобы предложить классическую Mac OS и macOS. -специфический контент.

Все многобайтовые значения сохраняются дважды, в формате little-endian и big-endian, либо одно за другим в том, что в спецификации называется "оба -byte orders »или в дублированных структурах данных, таких как таблица путей. Поскольку структуры были спроектированы с невыровненными элементами, эта кодировка с прямым порядком байтов не помогает разработчикам, поскольку структуры данных необходимо читать побайтно, чтобы преобразовать их в правильно выровненные данные.

Набор дескрипторов тома

Область данных начинается с набора из одного или нескольких дескрипторов тома, заканчивающихся указателем конца набора дескрипторов тома. В совокупности набор дескрипторов тома действует как заголовок для области данных, описывая ее содержимое (аналогично блоку параметров BIOS, используемому FAT, HPFS и диски, отформатированные в NTFS ).

Набор дескрипторов тома
Дескриптор тома # 1
...
Дескриптор тома #N
Терминатор набора дескрипторов тома

Терминатор набора дескрипторов тома - это просто особый тип дескриптора тома с цель обозначить конец этого набора структур.

Дескриптор тома

Каждый дескриптор тома имеет размер 2048 байт, что идеально подходит для одного сектора Режима 1 или Режима 2 формы 1. Они имеют следующую структуру:

← 2048 байтов →
ЧастиТипИдентификатор (всегда 'CD001')Версия (всегда 0x01)Данные
Размеры1 байт5 байтов1 байт2041 байт

Поле данных тома дескриптор может быть разделен на несколько полей, точное содержание которых зависит от типа.

Стандартные типы дескрипторов тома следующие:

Базовые типы дескрипторов томов
Значение поля типаТип
0Дескриптор тома загрузочной записи
1Первичный дескриптор тома
2Дополнительный дескриптор тома или

Расширенный дескриптор тома

3Дескриптор раздела тома
255Терминатор набора дескрипторов тома

Диск, совместимый с ISO 9660, содержит по крайней мере один первичный дескриптор тома, описывающий файловую систему и терминатор набора дескрипторов тома для указания конца последовательности дескрипторов.

Дескриптор первичного тома предоставляет информацию об объеме, характеристиках и метаданных, включая запись корневого каталога, которая указывает, в каком секторе находится корневой каталог. Другие поля содержат описание или имя тома, а также информацию о том, кто его создал и с каким приложением. Размер логических блоков, которые файловая система использует для сегментации тома, также сохраняется в поле внутри дескриптора первичного тома, а также объем пространства, занимаемого томом (измеряется в количестве логических блоков).

В дополнение к дескрипторам первичного тома могут присутствовать дополнительные дескрипторы тома или расширенные дескрипторы тома.

Дополнительные дескрипторы тома описывают тот же том, что и дескриптор основного тома, и обычно используются для обеспечения поддержки дополнительной кодовой страницы, когда стандартных кодовых таблиц недостаточно. Стандарт определяет, что ISO 2022 используется для управления наборами кодов, размер которых превышает 8 байтов, и что escape-последовательности ISO 2375 используются для идентификации каждой конкретной используемой кодовой страницы. Следовательно, ISO 9660 поддерживает международные однобайтовые и многобайтовые наборы символов при условии, что они вписываются в рамки упомянутых стандартов. Однако ISO 9660 не определяет никаких кодовых страниц, которые гарантированно поддерживаются: любое использование кодовых таблиц, кроме тех, которые определены в самом стандарте, подлежит согласованию между отправителем и получателем тома.

Расширенные дескрипторы томов были введены в ISO 9660, поправка 1. Они ослабляют некоторые требования других дескрипторов томов и записей каталогов, на которые они ссылаются: например, глубина каталога может превышать восемь, требуются идентификаторы файлов. не содержать "." или номер версии файла, длина идентификатора файла и каталога увеличивается до 207.

Избыточные копии каждого дескриптора тома также могут быть включены в случае повреждения первой копии дескриптора.

Каталоги и файлы

Обзор структуры каталогов ISO 9660

Записи каталогов хранятся после местоположения записи корневого каталога, где начинается оценка имен файлов. И каталоги, и файлы хранятся как экстенты, которые представляют собой последовательные серии секторов.

Файлы и каталоги различаются только атрибутом файла, который указывает его природу (аналогично Unix ). Атрибуты файла хранятся в записи каталога, описывающей файл, и, необязательно, в расширенной записи атрибутов.

Чтобы найти файл, имена каталогов в пути к файлу можно проверять последовательно, переходя к местоположению каждого каталога для получения местоположения следующего подкаталога. Однако файл также можно найти с помощью таблицы путей, предоставленной файловой системой. В этой таблице путей хранится информация о каждом каталоге, его родительском элементе и его местонахождении на диске. Поскольку таблица путей хранится в непрерывной области, ее можно искать намного быстрее, чем переход к конкретным местоположениям каждого каталога в пути к файлу, что сокращает время поиска.

Стандарт определяет три вложенных уровня обмена (перефразировано из раздела 10):

  • Уровень 1: имена файлов ограничены восемью символами с трехсимвольным расширением. Имена каталогов ограничены восемью символами. Файлы могут содержать один единственный файловый раздел.
  • Уровень 2: Файлы могут содержать один единственный файловый раздел.
  • Уровень 3: Никаких дополнительных ограничений, кроме тех, которые предусмотрены в основной части стандарта. То есть, длина идентификаторов каталогов не может превышать 31 символ, а имя файла + '.' + расширение имени файла не может превышать 30 символов в длину (разделы 7.5 и 7.6). Файлы также могут состоять из нескольких несмежных секций (с некоторыми ограничениями по порядку).

Дополнительные ограничения в теле стандарта: глубина иерархии каталогов не должна превышать 8 (корневой каталог находится на уровне 1), а длина пути к любому файлу не должна превышать 255 (раздел 6.8.2.1).

Стандарт также определяет следующие ограничения имен (разделы 7.5 и 7.6):

  • Все уровни ограничивают имена файлов в обязательной иерархии файлов заглавными буквами, цифрами, символами подчеркивания ("_") и точка. (см. также раздел 7.4.4 и приложение A),
  • Если для имени файла не указаны символы, то расширение имени файла должно состоять как минимум из одного символа.
  • Если символы не указаны указано для расширения имени файла, то имя файла должно состоять как минимум из одного символа.
  • В именах файлов не должно быть более одной точки.
  • Имена каталогов не должны использовать точки вообще.

Таблицы путей

Таблицы путей обобщают структуру каталогов в соответствующей иерархии каталогов, предоставляя только идентификатор каталога, местоположение экстента, в котором записан каталог, длину любых расширенных атрибутов, связанных с каталогом и индекс записи в таблице путей к родительскому каталогу.

Ограничения

Предел глубины каталога

Ограничения на длину имени файла (8 символов плюс 3 символа расширения для уровня обмена 1) и глубину каталога (8 уровней, включая корневой каталог) являются более серьезным ограничением файловой системы ISO 9660.

Расширение Rock Ridge работает с ограничением глубины в восемь каталогов путем складывания путей. Однако на практике немногие драйверы и операционные системы заботятся о глубине каталога, поэтому это правило часто игнорируется.

В дополнение к ограничениям, упомянутым выше, производитель CD-ROM может выбрать один из более низких уровней обмена, указанных в главе 10 стандарта, и дополнительно ограничить длину имени файла с 30 символов до 8 + 3. в идентификаторах файлов и 8 в идентификаторах каталогов, чтобы способствовать взаимозаменяемости с реализациями, которые не реализуют полный стандарт. (Иногда это ошибочно интерпретируется как ограничение в самом стандарте ISO 9660.)

Ограничение размера файла 2/4 ГиБ

Все числа в файловых системах ISO 9660, кроме используемого однобайтового значения для смещения GMT используются числа без знака. Поскольку длина экстента файла на диске хранится в 32-битном значении, максимальная длина составляет чуть более 4,2 ГБ (точнее, на один байт меньше 4 ГиБ ). (Примечание: некоторые старые операционные системы могут обрабатывать такие значения некорректно (т. Е. Со знаком вместо беззнакового), что сделало бы невозможным доступ к файлам размером более 2 ГБ. Последнее справедливо также для операционных систем без поддержки больших файлов..)

На основании этого часто предполагается, что размер файла на диске, отформатированном в соответствии с ISO 9660, не может быть больше 2-1, поскольку размер файла сохраняется в 32-битном значении без знака., для которого 2-1 - максимум.

Тем не менее, это ограничение можно обойти, используя функцию нескольких экстентов (фрагментацию) стандарта ISO 9660 уровня 3 для создания файловых систем ISO 9660 и отдельных файлов размером до 8 ТиБ. При этом файлы размером более 4 ГиБ могут быть разделены на несколько экстентов (последовательные серии секторов), каждый из которых не превышает 4 ГиБ. Например, бесплатное программное обеспечение, такое как InfraRecorder, ImgBurn и mkisofs, а также Roxio Toast, может создавать файловые системы ISO 9660. которые используют файлы с несколькими экстентами для хранения файлов размером более 4 ГиБ на соответствующих носителях, таких как записываемые DVD. Linux поддерживает несколько экстентов.

Ограничение количества каталогов

Другое ограничение - количество каталогов. ISO-образ имеет структуру, называемую «таблицей путей». Для каждого каталога изображения в таблице путей указан номер записи родительского каталога. Проблема в том, что номер родительского каталога является 16-битным числом, ограничивающим его диапазон от 1 до 65 535.

У некоторых программных инструментов могут возникнуть проблемы с управлением таблицей путей, если предел каталога превышен. Популярное приложение, использующее формат ISO, mkisofs, отключается при переполнении таблицы путей. Nero Burning ROM (для Windows) и Pinnacle Instant CD / DVD не проверяют, возникает ли проблема, и без предупреждения создают недопустимый файл ISO или диск.

Расширения и улучшения

Есть несколько расширений ISO 9660, которые ослабляют некоторые из его ограничений:

Для операционных систем, которые не поддерживают какие-либо расширения, необходимо использовать файл преобразования имен TRANS.TBL. Он должен находиться в каждом каталоге, включая корневой каталог. Сейчас это устарело, поскольку сегодня используется немного таких операционных систем.

Стандарт ISO 13490 - это расширение формата ISO 9660, которое добавляет поддержку нескольких сессий на диске. Поскольку ISO 9660 по своей природе является файловой системой, доступной только для чтения и предварительно настроенной, все данные должны быть записаны на носитель за один раз или «сеанс». После написания нет никаких условий для изменения сохраненного содержимого. ISO 13490 был создан, чтобы разрешить добавление дополнительных файлов на записываемый диск, такой как CD-R, за несколько сеансов.

JIS X 0606: 1998, также известный как ISO 9660: 1999, представляет собой проект японского промышленного стандарта, созданный Японским национальным органом (JTC1 N4222) с целью внесения некоторых улучшений и устранения некоторых ограничений из исходного стандарта ISO. 9660 стандарт. Этот проект был представлен в 1998 году, но еще не ратифицирован в качестве стандарта ISO. Некоторые из его изменений включают удаление некоторых ограничений, налагаемых исходным стандартом, путем увеличения максимальной длины имени файла до 207 символов, удаления восьмиуровневого ограничения на максимальное вложение каталогов и удаления специального значения символа точки в именах файлов. Некоторые операционные системы также допускают подобные послабления при чтении оптических дисков. Некоторые инструменты для создания дисков (такие как Nero Burning ROM, mkisofs и ImgBurn ) поддерживают так называемый режим «ISO 9660: 1999» (иногда называемый «ISO 9660 v2 »или« ISO 9660 Level 4 »), который снимает ограничения в соответствии с рекомендациями проекта ISO 9660: 1999.

Стандарт ISO 13346 / ECMA-167 был разработан совместно со стандартом ISO 13490. Этот новый формат устраняет большинство недостатков ISO 9660, а его подмножество превратилось в универсальный дисковый формат (UDF), который был принят для DVD. Таблица дескрипторов тома сохраняет макет ISO9660, но идентификатор был обновлен.

Образы дисков

Образы файловой системы ISO 9660 (ISO-образы ) являются обычным способом электронная передача содержимого компакт-дисков. Они часто имеют расширение имени файла .iso(.iso9660менее распространено, но также используется) и обычно называются «ISO».

Поддержка операционной системы

Большинство операционных систем поддерживают чтение дисков в формате ISO 9660, а большинство новых версий поддерживают такие расширения, как Rock Ridge и Joliet. Операционные системы, не поддерживающие расширения, обычно показывают основные (не расширенные) функции обычного диска ISO 9660.

Операционные системы, поддерживающие ISO 9660 и его расширения, включают следующее:

  • DOS : доступ с расширениями, такими как MSCDEX.EXE (Microsoft CDROM Extension), NWCDEX.EXE или CORELCDX.EXE
  • Microsoft Windows 95, Windows 98, Windows ME : может читать уровень ISO 9660 1, 2, 3 и Joliet
  • Microsoft Windows NT 4.0, Windows 2000, Windows XP и более новые версии Windows могут читать ISO 9660, уровень 1, 2, 3, Joliet и ISO 9660: 1999. Windows 7 также может ошибочно принять формат UDF за CDFS. для получения дополнительной информации см. UDF.
  • Linux и BSD : ISO 9660 Level 1, 2, 3, Joliet, Rock Ridge и ISO 9660: 1999
  • Apple GS / OS : поддержка ISO уровней 1 и 2 через транслятор файловой системы HS.FST.
  • Classic Mac OS 7–9: ISO Level 1, 2. Дополнительное бесплатное программное обеспечение поддерживает Rock Ridge и Joliet (включая уровень ISO 3): Joke Ridge и Joliet Volume Access.
  • macOS (все версии): уровень ISO 1, 2, Joliet и Rock Ridge Extensions. Уровень 3 в настоящее время не поддерживается, хотя пользователи могли монтировать эти диски.
  • AmigaOS поддерживает расширения «AS» (которые сохраняют биты защиты Amiga и комментарии к файлам)
  • QNX
  • ULTRIX
  • OS / 2, eComStation и ArcaOS
  • BeOS, Zeta и Haiku
  • OpenVMS поддерживает только ISO 9660 Interchange уровни 1-3, без расширений
  • RISC OS Поддержка оптических носителей, записанных на ПК, неоднородна. Большинство дисков CD-R / RW работают безупречно, однако диски DVD + -R / RW / RAM полностью пропадают под управлением RISC OS 4.02, RISC OS 4.39 и RISC OS 6.20
См. Также
Ссылки
Внешние ссылки
Последняя правка сделана 2021-05-23 08:36:50
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте