Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Абель.docx
Скачиваний:
13
Добавлен:
26.11.2018
Размер:
569.84 Кб
Скачать

13H, которое позволяет выполнить произвольную адресацию в дисковой памяти

по номеру дорожки и сектора. Методы DOS осуществляют некоторую

предварительную обработку до передачи управления в BIOS. В гл.17

объясняется применение предпочтительных функций расширенного DOS 2, а

гл.18 представляет основные дисковые операции в BIOS. Напоминание: Термин

кластер определяет один или более секторов с данными в зависимости от

дискового устройства.

БЛОК УПРАВЛЕНИЯ ФАЙЛОМ (FCB)

________________________________________________________________

Для выполнения операций ввода-вывода на диске в базовой DOS

необходимо в области данных определить блок FCB. Блок FCB не поддерживает

путь доступа к файлу, поэтому он используется главным образом для

обработки файлов в текущей директории. Блок FCB содержит описание файла и

его записей в приведенном ниже формате. Пользователь должен

инициализировать байты 0-15 и 32-36, байты 16-31 устанавливаются DOS:

Байты Назначение

0 Указывает дисковод: 01 для дисковода a, 02 для b и т.Д.

1-8 Имя файла, выравненное по левой границе с конечными пробелами,

если имя меньше 8 байт. Поле может содержать зарезервированные

имена, например, LPT1 для принтера.

9-11 Тип файла для дополнительной идентификации, например, DTA или

ASM. Если тип файла меньше трех байт, то он должен быть выравнен

по левой границе и дополнен конечными пробелами. DOS хранит имя

и тип файла в оглавлении.

12-13 Номер текущего блока. Блок содержит 128 записей. Для локализации

конкретной записи используется номер текущего блока и номер

текущей записи (байт 32). Первый блок файла имеет номер 0,

второй - 1 и т.д. Операция открытия файла устанавливает в данном

поле 0.

14-15 Логический размер записи. Операция открытия инициализирует

размер записи значением 128 (шест.80). После открытия и перед

любой операцией чтения или записи можно устанавливать в данном

поле любое требуемое значение длины записи.

16-19 Размер файла. При создании файла DOS вычисляет и записывает это

значение (произведение числа записей на размер записей) в

оглавление. Операция открытия выбирает размер файла из

оглавления и заносит его в данное поле. Программа может читать

это поле, но не может менять его.

20-21 Дата. При создании или последней модификации файла DOS

записывает дату в оглавление. Операция открытия выбирает дату из

оглавления и заносит в данное поле.

22-31 Зарезервировано для DOS.

32 Текущий номер записи. Данное поле содержит текущий номер записи

(0-127) в текущем блоке (см. байты 12-13). Система использует

текущие значения блока и записи для локализации записи в

дисковом файле. Обычно номер начальной записи в данном поле - 0,

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

любое значение от 0 до 127.

33-36 Относительный номер записи. Для произвольного доступа при

операциях чтения или записи данное поле должно содержать

относительный номер записи. Например, для произвольного чтения

записи номер 25 (шест.19), необходимо установить в данном поле

шест.19000000. Произвольный доступ характеризуется тем, что

система автоматически преобразует относительный номер записи в

текущие значения блока и записи. Ввиду ограничения на

максимальный размер файла (1.073.741.824 байтов), файл с

короткими записями может содержать больше записей и иметь

больший относительный номер записи. Если размер записи больше