Файловые системы
Для аудиодисков не требовалось создавать какую-либо специальную логическую структуру — достаточно того, что каждой аудиозаписи соответствует собственный трек. Для хранения данных требуется организация файловой системы, которая не может просто повторять дисковую файловую систему, например,MS-DOS. Такая система при большом времени доступа с большим количеством каталогов и файлов (а емкость 650 Мбайт к этому располагает) работала бы крайне медленно. В настоящее время дляCD, используемых вPC, распространены почти эквивалентные файловые системыHSFиISO9660, которые иногда отождествляют. Однако в структурах записей этих систем есть небольшие различия, которые должны отрабатываться программным обеспечением (но дажеMSCDEXих разделяет).
HSF (HighSierraFormat), он жеHSG (HighSierraGroup), — фактический стандарт на доступ к данным из средыDOS,UNIXи других ОС. Стандарт назван по географическому названию места его разработки.
ISO9660 — первый стандарт (1988 г.) для хранения данных наCD-ROM. Структуру тома описывает таблица содержимого (ТОС илиVTOC), которая хранится в его логических секторах (на треке тома). Один диск (или сессия) может иметь и несколько томов, но эта возможность поддерживается не всяким ПО и практически не используется. В ТОС описаны все файлы, присутствующие на диске, — имя, дата создания, атрибуты, положение всех экстентов файла (экстент — фрагмент файла, записанный в непрерывной цепочке блоков).
Файлы на диске располагаются в каталогах, образующих древовидную структуру, и каждый каталог содержит список входящих в него файлов, их атрибуты и указатели на секторы, в которых располагается начало файлов или их экстентов. Для ускорения поиска файлов на диске кроме каталогов имеется дополнительнаятаблица путей (pathtable), содержащая список путей (в символьномформате) ко всем подкаталогам диска и адреса их начальных секторов. Записи каталогов и таблицы путей имеют переменную длину, определяемую длиной имени. Чтобы таблицы были компактными (тогда они смогут целиком размещаться в ОЗУ), выгоднее использовать наиболее короткие имена каталогов. С учетом поиска через таблицу путей выгодно большое количество файлов распределять по большему количеству каталогов, при этом время на поиск в каталоге (перебор) сократится.
Стандарт имеет три вложенных уровня совместимости. Самые жесткие ограничения имеетпервый уровень (Level1): файловая система в стилеMS-DOS, имена файлов по схеме «8.3», глубина вложенности каталогов до 8. В именахфайлов и каталогов допустимы только прописные буквы латинского алфавита, цифры и символ подчеркивания. После имени файла через символ ; (точка сзапятой) может указываться номер версии файла, который многими ОС игнорируется. Фрагментация файлов не допускается — файл может располагаться тольков непрерывной цепочке секторов. Первый уровень совместимости обеспечивает гарантированную переносимость носителя между любыми системами, поддерживающими данный формат.Второй уровень (Level2) позволяет использоватьдлинные имена файлов с более богатым набором символов, допустима глубина вложения каталогов — до 32. Этот формат воспринимается не всеми операционными системами (в частности, его не поддерживаетMS-DOS).Третий уровень (Level3) допускает даже фрагментацию и чередование файлов. Это означает,что файл может размещаться во множестве экстентов, и экстенты разных файлов могут чередоваться. Эта возможность используется при инкрементной записи дисков в форматеUDF(см. ниже).
Rock Ridge — расширение стандартаISO9660 для ОСUNIX, обеспечивающее работу с длинными именами файлов и символьными связями.
Формат HFS (HierarchicalFileSystem— иерархическая файловая система) используется вместоISO9660 в дисках дляMacintosh, наPCэти диски воспринимают ОСLinuxи OS/2. Формат допускает до 31 символа в имени файла,вложенные каталоги и некоторые специальные возможности, свойственные системе Мае.
Joliet — расширение файловой системыISO9660 отMicrosoftдляWindows9x/NT, снимающее ограничения на имена файлов. Позволяет использовать любые символы в именах, преодолеть ограничение на длину имени «8.3», увеличить возможную глубину вложенности каталогов и снять ограничения на имена каталогов. Допускает длину имен файлов и каталогов до 64 символов (длинные именаWindowsмогут иметь длину до 255 символов). Символы имен кодируются двумя байтами (Unicode), что обеспечивает возможность использования различных языков. Расширение строится на возможности организации множества дескрипторов одного и того же тома, заложенной вISO9660. Файлы на диске размещаются так же, как и вISO9660, и первичный дескриптор тома также указывает на структуры форматаISO, с таблицей путей, доступнойMS-DOS. Но добавляется еще и дополнительный дескриптор тома (SVD), который указывает на альтернативную таблицу путей, содержащую расширенные именаWindows. Обе таблицы путей описывают один и тот же набор файлов.
Romeo — расширение файловой системы для поддержки длинных имен (до 128 символов)Windows95 иNT. Если имена не длиннее 31 символа, диск может читаться и на Мае.К Joliet отношения не имеет.
Поскольку диск CD-RWдопускает перезапись, структура файловой системыISO9660, не ориентированная на возможность модификации уже записанных данных, — для него не лучшее решение.
Файловая система UDF (UniversalDataFormat) с пакетами переменной длины построена иначе. Здесь файлы хранятся рядом со своими описаниями, допустима длина имен до 127 символов. Каждый пакет представляет отдельный файл(или его экстент), в начале пакета имеется описание файла (имя, дата, атрибуты,длина файла и данного экстента). Никаких общих таблиц размещения файлов и экстентов дляUDFне требуется — последовательное чтение пакетов позволяетсобрать все файлы диска. Конечно, для быстрого поиска нужного файла в памяти компьютера строится виртуальная таблица размещения файлов. Диск (сессия) с пакетами переменной длины может быть закрытым и с дескрипторами тома файловой системыISO9660 (Level3, поскольку требуется поддержка фрагментации), тогда он будет читаться традиционными средствами. Иначе для его чтения нужен специальный драйверUDF. Организация диска в виде пакетовпеременной длины очень эффективна с точки зрения расходуемого дискового пространства, поскольку здесь мало «отходов» (на каждом файле теряется в среднем половина сектора размером 2 Кбайт). Обычная файловая системаFAT16 на таком же объеме диска имеет размер кластера 16 Кбайт, так что средние потери — 8 Кбайт на файл. Диск, «забитый под завязку» пакетами переменной длины, может и не иметь возможности закрытия подISO9660. Прочитать такойдиск (с незакрытой сессией) можно только на рекордере. Формат с переменной длиной довольно устойчив к авариям при записи. Диск будет испорчен лишь в том случае, если пропадет питание во время записи пакета. В любой другой момент прерывание процесса записи не приводит к катастрофе — файлы пишутсяпо принципу «все свое ношу с собой», для доступа к ним не нужны никакие таблицы.
Разновидности компакт-дисков
В настоящее время встречается множество разновидностей компакт-дисков, большинство из которых при определенных условиях можно использоваться в ПК.
PCCD-ROM— диски с файлами данных дляIBM PC-совместимых компьютеров. Файловая система, как правило,ISO9660, для длинных именWindowsиспользуется расширениеJoliet.
MACCD-ROM— диски с файлами данных для компьютеровMacintosh. Файловая системаHFS.
CD-RиCD-RW— болванки для записи и перезаписи наCD-рекордере;логическое содержание определяется записанной программой.
CD-DA(DigitalAudio) — традиционный стандарт аудиозаписи (до 99 треков, до 74 минут, до 99 точек входа на каждый трек). АудиодискиCD-DAимеют логотип «CompactDiscDigitalAudio».
CD-Text— формат, предложенныйPhilipsдля записи текстовой информации на аудиодиски (например, автор, название произведения и т. п.). Текст записывается в субканалахR...W. Плейеры, не поддерживающие текст,просто воспроизводят аудиотреки. Специальные плейеры имеют алфавитно-цифровой дисплей (2 строки по 20 знаков или 21 строку по 40 знакомест), предусматривается выбор информации для просмотра и произведений для прослушивания с помощью меню. ПриводыCD-ROMиз данногоформата воспринимают только аудиоинформацию (не поддерживают декодирование дополнительных субканалов).
CD-Graphics(CD-G,CD+G) — формат для записи графики (текста) в субканалахR...W. Графика записывается с разрешением 288 х 24, 2 цвета (линейная графика); 288 х 192, 16 цветов (телевизионная графика,CD-G) или 288x192, 256 цветов (расширенная телевизионная графика,CD-EG).Применяется в проигрывателях «Караоке».
PhotoCD— хранение изображений в форматеKodak. Использует физический стандартCD-ROMXAи спецификации многосеансовых записываемых (CD-R) дисков.
Video CD — высококачественная цифровая видеозапись с MPEG-сжатием, видеоданные чередуются с аудиоданными. Спецификация описана в Белой книге. Диск может содержать до 74 минут видеопотока, сжатого по алгоритму MPEG-1, с разрешением 352 х 240, 30 к/с (NTSC) или 352 х 280, 25 к/с (PAL/SECAM), со стереозвуковым сопровождением. Неподвижные изображения могут иметь разрешение до 720 х 480/576 (могут использоваться для меню). На каждом треке может быть расставлено до 98 точек входа, на всем диске — до 500. Диски интерактивны: с помощью меню можно выбирать точки входа (начала воспроизведения), формировать последовательность исполнения (playlist), быстро «перематывать» вперед и назад, смотреть и скрывать субтитры. Диск содержит не менее двух треков. На первом треке записана прикладная программа проигрывания, списки точек входа, статические изображения и некоторые вспомогательные данные. На втором и далее треках размещаются видеоданные. Дополнительно могут присутствовать и аудиотреки CD-DA. Использует физический стандарт CD-ROM XA. Диски предназначены для Video CD-плейеров, но могут воспроизводиться и приводом CD-ROM на ПК с MPEG-декодером. Видеодиски Video CD имеют логотип «Compact Disc Digital Video» и (или) надпись «VideoCD». Заметим, что диски CD-Video — это совсем другие диски, на которых записана аналоговая видеоинформация, и к устройствам чтения-записи, применяемым в ПК, эти диски не имеют никакого отношения.
Super Video CD (SVCD) — видеодиски с более высоким качеством изображения (напоминают DVD, но имеют меньшую емкость). Разрешение 480 х 480/576, сжатие по алгоритму MPEG-2 (средняя скорость потока 2,6 Мбит/с), 2 стерео- или 4 монофонических канала, 37 минут видео при максимальной скорости потока, может воспроизводиться на приводе со скоростью не ниже 2х.
CD Plus, они же CD Extra, — мультимедийные диски, содержащие две сессии — первую аудио (до 98 треков, воспроизводима стандартным аудиоплейером) и вторую в формате CD-ROM XA. Называется также Enhanced Music CD.
CD-I — интерактивные диски с видео, аудио и другими данными, предназначенные для воспроизведения на специальном плейере. Файловая система отличается от ISO 9660. Диски CD-I имеют логотип «Compact Disc Interactive».
CD-Bridge, или CD-I Bridge, — диски, соответствующие Белой книге: формат сектора CD-ROM XA Mode 2. Видеопрограммы могут проигрываться на плейере CD-I и CD-ROM XA. Файловая система ISO 9660.
Mixed-Mode Disc — диск со смесью данных (трек 1) и аудиотреков (треки 2-99). На старых аудиоплейерах первый трек может ошибочно трактоваться как аудио и воспроизводиться как страшный шум, способный повредить акустические системы и уши. Из разных вариантов (CD-Extra или CD-Plus, Hidden Track и др.) более известны Enhanced CD. Чтение этих дисков в приводах CD-ROM поддерживается в Windows 9x.