Принцип записи файла на диск

При записи файла на диск операционная система не пишет информацию в виде непрерывной последовательности битов, а порциями — кластерами, величина которых определяется размером диска и типом Операционной системы. Отсюда кластер — величина логическая.

Сектор — величина физическая. Самый распространенный размер сектора — 512 байт. Каждый сектор имеет адрес; для нахождения нужного сектора схемы накопителя (дисковода) считывают эти адреса. В каждом секторе наряду с адресом хранится контрольный код избыточного циклического контроля (CRC—Cyclic Redundancy Check), помогающий контролировать правильность данных в секторе. При записи данных в сектор контроллер накопителя вычисляет для данных значение кода CRC и сохраняет его с адресом сектора. Когда контроллер накопителя считывает сектор, он повторно вычисляет код CRC и сравнивает его с хранящимся в секторе. Если коды CRC не совпадают, контроллер фиксирует ошибку и отказывается использовать данные; при этом на экран монитора выводится сообщение об ошибке.

Если бы операционная система следила за каждым сектором каждого файла, ее системные таблицы занимали бы места больше, чем сами файлы. Для сокращения системных таблиц до приемлемого размера операционная система группирует секторы в единицы распределения, называемые кластерами, и следит именно за ними. Кластер является единицей записи информации на диск Операционной системой. Операционная система выбирает подходящий размер кластера при подготовке диска к работе. Для гибких дисков кластер состоит из одного или двух секторов, а на жестких дисках большей емкости — из восьми секторов и более. Поскольку операционная система следит за кластерами, а не за секторами, она всегда распределяет файловое пространство целыми кластерами. Даже если файл содержит всего один байт, операционная система выделит ему целый кластер; остальное пространство окажется неиспользованным. Но возможность увеличения размера файла не ограничивается этим пространством. Когда один кластер заполнен, операционная система выделяет другой.

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

Распределение на диске кластерами имеет несколько несоответствий, которые запутывают многих пользователей. Например, при копировании небольшого файла (скажем 200 байт) с диска, имеющего кластеры в 1 Кбайт (1024 байт), на жесткий диск с кластерами по 4 Кбайта размер файла окажется тем же (т.е. 200 байт), но занимает он на жестком диске уже 4096 байта. Если попытаться скопировать группу из 20 небольших файлов (по 200 байт), суммарный размер которых 4 Кбайта, на жесткий диск, для них может не хватить места при наличии свободного пространства в 800 Кбайт.

Для хранения данных отводится не весь диск, а часть его резервируется для системной информации.

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

Системная область (для жестких дисков эта область занимает доли процента от общего объема диска, для дискет — 1—2%) разбита на четыре зоны:

  • ? MBR (Master Boot Record) — сектор, где хранится специальная программа загрузки и запись о разбиении диска на разделы (логические диски — partitions). Эта область отсутствует у дискет;
  • ? BR (Boot Record) — сектор начального загрузчика; здесь записываются данные о типе диска, а также программа начальной загрузки Операционной системы;
  • ? FAT (File Allocation Table) — таблица размещения файлов; содержит последовательность номеров кластеров на диске (цепочку номеров), в которых записано содержимое файла, т.е. здесь указывается физическое местонахождение файла, а также информация о свободных и дефектных кластерах на диске;
  • ? RDir (Root Directory) — корневой каталог диска, содержит записи имен файлов и подкаталогов первого уровня, сведения о размерах файла в байтах, дату и время создания или последнего редактирования файла, номер первого кластера и атрибуты файла;
  • ? область хранения данных (Data) — содержит запись собственно содержимого файлов и подкаталогов диска, кроме корневого.

В таблице 4.3 приведен пример системной таблицы. Она содержит по одному элементу для каждого кластера на диске.

Рис. 4.1. Логическая схема диска (кроме CD-ROM)

Ячейки в таблице имеют последовательные номера, начиная с О, причем первые два кластера заняты системными записями. Каждый кластер в накопителе имеет свой номер, начинающийся с 2. Элемент каталога для файла содержит адрес первого кластера файла. В ячейке FAT, которая соответствует первому кластеру, содержится ссылка на второй кластер файла, в ячейке, соответствующей второму кластеру, — ссылка на третий кластер файла и т.д. Такая цепочка продолжается, пока не будет достигнут последний кластер файла, элемент FAT которого содержит специальный код, означающий конец файла (EOF — End-Of-File, в шестнадцатеричном коде FFFF =15×163 +15 х 162 + 15 х 161 + 15 х 160 = 65535).

Предположим, что элемент каталога для файла WORK.TXT показывает, что файл начинается в кластере 12. Этот элемент FAT содержит число 13, поэтому продолжение файла нужно искать в тринадцатом кластере. Согласно FAT, из тринадцатого кластера следует перейти в четырнадцатый, из четырнадцатого — в шестнадцатый. В элементе FAT для шестнадцатого кластера находится маркер конца файла. Таким образом, этот файл занимает четыре кластера, что должно согласовываться с размером файла, указанным в элементе каталога. Файл WORK.TXT является также примером фрагментированного файла. Вместо расположения в соседних кластерах файл разделен на два фрагмента. Чтобы использовать все дисковое пространство, операционная система часто вынуждена фрагментировать файлы. Особенно высока вероятность фрагментации при расширении файла. Если, например, при расширении файла WORK.TXT потребовался дополнительный кластер, операционная система не может выделить кластеры 17, 18, так как они дефектны. Для файла приходится искать следующий свободный кластер, начиная с начала диска, отмеченный в FAT нулем (0); в данный момент это будет кластер 11. При этом образуется еще один фрагмент.

Для небольших файлов требуется всего один кластер. Предположим, что файл READ.ME начинается в кластере 15. Кластер 15 содержит маркер конца файла, следовательно, это единственный кластер файла.

Поскольку FAT играет очень важную роль в управлении файлами и распределении дискового пространства, операционная система формирует две идентичные таблицы, одна из которых служит резервом (если первая таблица окажется поврежденной). Операционная система тем не менее ни при каких обстоятельствах не будет использовать копию. Она может оказаться полезной при восстановлении файлов вручную. При создании нового файла и изменении его размера операционная система обновляет обе таблицы FAT. Если прервать работу операционной системы до окончания обновления таблиц, порядок в них нарушается, и правильный доступ к некоторым файлам становится невозможным. Чтобы избежать этого, нельзя производить перезагрузку или выключать питание при светящемся индикаторе накопителя. Светящийся индикатор показывает, что операционная система обращается к накопителю. При записи файлов иногда возникают сбои (также при заражении вирусами), что приводит к созданию так называемых потерянных кластеров (Lost Cluster). Потерянные кластеры — это участки диска, не принадлежащие ни одному из файлов и не числящиеся в таблице размещения файлов как свободные. В данной ситуации потребуется программа типа NDD или Scandisk, которая предложит либо сохранить эту информацию в виде отдельных файлов в корневом каталоге на диске, либо пометить эти участки как свободные в FAT.

Корневой каталог имеет для разных по характеристикам дисков разный, но фиксированный объем, определяемый величиной зоны Root Directory в системной области диска.

В таблице 4.3 представлена структура записей в корневом каталоге диска.

Структура записей в корневом каталоге диска

Таблица 4.3

При удалении файла (при помещении его в «Корзину» Windows) операционная система не стирает его данные с диска в области Data (поэтому при необходимости можно его восстановить). Для удаления файла в первый символ его элемента каталога (в области System) помещается специальный код удаления, а в соответствующие файлу элементы FAT помещаются нули. В результате элемент каталога и элементы FAT становятся доступными для других файлов. При создании нового файла или расширении какого-либо другого файла используется элемент каталога удаленного файла и часть его кластеров (или все). Таким образом, затираются данные на диске удаленного файла. После чего восстановление данных на диске практически невозможно.

> Физическая структура компакт-дисков

Основные типы компакт-дисков

Особенности оптических ЗУ определяются типом используемых компакт-дисков. В настоящее время распространены следующие основные типы компакт-дисков:

  • • считываемый компакт-диск, или компакт-диск с памятью только для чтения (Compact Disk Read Only Memory – CD-ROM), изгоговленный промышленным способом штамповки. Такой диск содержит информацию и предназначен для многократного считывания;
  • • записываемый компакт-диск (Compact Disk Recordable – CD-R), позволяющий пользователю осуществить однократную (многосеансную) запись данных, после чего использовать диск для многократного считывания;
  • • перезаписываемый компакт-диск (Compact Disk Rewritable – CD- RW), предназначенный для многократной записи и считывания;
  • • цифровой универсальный диск (Digital Versatile Disk – DVD), предназначенный для качественного воспроизведения видеоизображений, звука и цифровых данных. Отличается от других дисков высокой плотностью записи.

Физическая структура компакт-диска создается в процессе его технологического изготовления и определяется количеством слоев и их расположением. Поэтому рассмотрим технологию изготовления и особенности основных типов компакт-дисков.

Диски CD-ROM

Диски CD-ROM предназначены для многократного считывания хранящихся на них программных (компьютерных) файлов, а не оцифрованных звуковых записей. При массовом производстве компакт-диски изготавливаются штамповкой или прессованием. Технология изготовления CD-ROM подобна технологии изготовления музыкальных дисков или грампластинок. Вначале создается диск-оригинал, состоящий из стеклянной основы с нанесенным на нее регистрирующим слоем. В процессе записи данных на диск-оригинал с использованием сложной прецизионной аппаратуры изменяется рельеф его регистрирующего слоя. Полученный рельеф с диска- оригинала переносится на металлическую матрицу. Изготовленная матрица используется при массовом производстве штампованных компакт-дисков CD-ROM с поликарбонатной основой. Для создания отражательной поверхности на отштампованный диск напыляется тонкий (0,05…0,1 мкм) слой алюминия. Для защиты алюминиевого слоя от окисления наносится слой акрилового лака, затвердевающего под действием ультрафиолетовых лучей. На поверхность диска методом трафаретной печати наносится текст этикетки.

На рис. 12.3,а приведена физическая структура диска CD-ROM (вдоль дорожки).

Рис. 12.3. Физические структуры CD-ROM (a), CD-R (б) и CD-RW (в)

Диски CD-R. Рассмотрим основные технологические этапы процесса изготовления диска:

  • • прессование расплавленной поли карбонатной массы с использованием формообразующей матрицы – создание пол и карбонатной подложки;
  • • формирование с помощью матрицы на диске спиралеобразной изначальной бороздки (Pre-groove), или канавки, в виде выступа. Со стороны лазера эта канавка имеет волнообразную форму (отклонение составляет 0,03 микрона при расстоянии между канавками 1,6 микрона). Отклонения канавки от осевой линии являются дополнительной информацией, которая считывается накопителем. Сигнал, формируемый в результате колебаний дорожки, называется абсолютным временем изначальной дорожки АТIР (Absolute Time In Pre-groove);
  • • нанесение равномерного слоя органического красителя способом центрифугирования;
  • • создание отражающего слоя из золота, обладающего высокой коррозийной стойкостью и имеющего максимально возможную отражательную способность;
  • • покрытие поверхности диска акриловым лаком для защиты отражающего слоя и слоя красителя;
  • • нанесение слоя краски способом трафаретной печати. Слой краски используется для идентификации и дополнительной защиты диска. Как следует из рис. 12.3,б, на котором показано сечение диска CD-R поперек дорожки, в его структуре содержится большее количество слоев по сравнению с CD-ROM (появились записывающий слой и слой с изначальными канавками).

В режиме записи используется лазерный луч повышенной мощности с длиной волны 780 нм. Лазер работает в импульсном режиме. Слой органического красителя нагревается до температуры 250–300°С. Краситель выгорает и становится непрозрачным. Поэтому процесс записи часто называют выжиганием. Выгоревшая часть красителя соответствует уровню логического нуля, сохраненная часть – уровню логической единицы. Выжженные участки не восстанавливаются, поэтому диски CD-R называются носителями с однократной записью.

В режиме чтения используется луч лазера пониженной интенсивности. При попадании на выжженные участки луч не отражается: считывается логический нуль, на других участках считывается логическая единица.

Рубрики: IT

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *