Доступом называется обращение к файлу с целью чтения или записи в него информации.
Файловая система поддерживает два типа доступа к файлам:
□ последовательный метод доступа;
□ прямой (непосредственный) метод доступа.
При последовательном доступе записи из файла считываются подряд, строго в порядке их расположения в файле. Поэтому, чтобы обратиться (получить доступ) к определенной записи, необходимо читать все предьщущие. При прямом доступе обеспечивается непосредственное обращение к записи по ее номеру в файле. Механизм доступа к файлу и его записям при программировании также имеет два варианта:
□ доступ к файлу с использованием специальной таблицы — управляющего блока файла;
□ доступ к файлу по идентификатору.
Управляющий блок файла (FCB — File Control Block) содержит следующую информацию:
□ номер (букву) дисковода, где установлен диск с файлом;
□ имя файла и его расширение;
□ текущий номер блока в файле;
□ длину записи в байтах;
□ размер файла в байтах;
□ дату последней модификации файла;
□ относительный номер записи (текущий номер);
□ номер записи и т. д.
Некоторые из вышеназванных параметров требуют дополнительного пояснения. Файл состоит из блоков, объединяющих по 128 записей в каждом. Относительный номер записи — это порядковый номер записи в блоке. Текущий номер блока и относительный номер записи используются при последовательнрм доступе к записям файла. Номер записи — это параметр, объединяющий номер блока и относительный номер записи в блоке, он используется при произвольном доступе к записям файла. Важный параметр — длина записи (точнее, длина логической, кажущейся записи, которая может отличаться от длины физической записи из-за наличия различных служебных элементов в структуре записи и файла). Длина записи используется при определении числа байтов, пересылаемых при обмене информацией с ОЗУ и при определении положения записи внутри блока. Блок FCB позволяет получать доступ к файлам только в текущем каталоге. Идентификатор файла — ASCIIZ-строка, идентифицирующая файл. ASCIIZ- (ASCII-Zero) строка содержит следующую информацию:
□ номер (логическое имя) дисковода и путь к файлу (если нужно);
□ имя файла и его расширение;
□ нулевой байт (zero-байт).
Использование FCB для обращения к файлу позволяет реализовать произвольный и последовательный методы организации доступа, но часто оказывается довольно сложным, поэтому в версиях MS DOS, начиная с DOS 2.0 и выше, введено обращение к файлу по идентификатору, которое чаще всего и применяется на практике, если не требуется выполнять детализированные процедуры с отдельными дорожками и секторами диска. Каждый файл и в случае использования FCB, и в случае использования ASCIIZ должен иметь свой атрибут файла или просто атрибут.