Читайте также:
|
|
Корневой каталог
Корневой каталог имеет определенный размер для каждого формата диска. Этот размер определяет количество записей в каталоге, предназначенного для записи файла. Каждый элемент корневого каталога состоит из 32 байт. Таким образом 1 сектор равен 512 байт вмещает 16 элементов. На дискете корневой каталог занимает от 4 до 7 дорожек. У ЖД корневой каталог занимает несколько десятков секторов и размер зависит от объема диска. Если требуется записать более 512 файлов, то используется подкаталог. Подкаталог хранится также как и файл, но его содержимое интерпретируется как расширение корневого каталога и отличается знаком атрибута подкаталога. Доступ к корневому каталогу не проблемный для подкаталога отводится один кластер и он имеет не произвольную длину и конкретное место.
Логическая структура информации
Для хранения информации в определенном месте диска контроллеру накопителя необходимо сообщить где ее поместить на конкретной поверхности на каком цилиндре и секторе. Эту функцию выполняет ВlOS, а не ОС. ос на высшем уровне считает дисковое пространство в каждом накопителе единым длинным списком логических секторов. Аппаратные средства подчиняются требованиям физической адресации. Однако программисты и пользователи редко используют такую адресацию, так как логическое представление намного проще и удобнее. ОС состоит из двух частей:
1) ВIOS, записанная в ПЗУ,
2) программа BIOS.
BIOS в ПЗУ работает с аппаратурой как с физическим объектом, DOS не работает с физическими адресами. Способ нумерации логических секторов, применяемых в ОС не следует путать с нумерацией физических секторов, начинающихся с 1 дорожки О сектора, а также не следует путать нумерацию логических секторов с похожими логическими адресами блоков. Место положения блока информации определяют четырьмя способами:
1. с помощью физического адреса;
2. логическая адресация блока- указывается тип накопителя;
3. фиктивный физический адрес;
4. логический номер сектора.
Таблица размещения файлов. Кодирование и декодирование содержимого элементов ТРФ.
Обращение к файлам идёт через таблицу размещения файлов (FAT) в единицах «кластер».
FAT состоит из элементов, длина каждого из которых составляет 12 или 16 бит в зависимости от максимального количества кластеров на диске. Файл может занимать один кластер и более. Каждому кластеру на диске однозначно соответствует элемент FAT:
- элемент номер 2 содержит код для кластера номер 2,
- элемент номер 3 содержит код для кластера номер 3 и т.д.
Для декодирования информации в 12-битовых элементах таблицы FAT программным путем нужно выполнить следующие:
1. Умножить заданный номер кластера на 1,5 (байт/элемент FAT);результат - это не смещение в FAT 9номер байта, относящийся к элементу FAT, соответствующему используемому кластеру).
2. Загрузить слово (2-байтовое число),начиная с этого смещения, в регистр (прочитать с учетом перестановки байт). Из прочитанных четырех шестнадцатеричных три цифры для трехзначного элемента FAT.
3. Если заданный номер кластера четный, следует использовать три младшие цифры (выполнить логическое умножение содержимого регистра на 0FFF), иначе сохранить три старшие цифры (сдвиг содержимого регистра вправо на четыре бита командой SHR)
4. Если результирующие три цифры представляют собой число от FF8 до FFF, значит достигнут конец файла, иначе эти цифры являются номером следующего кластера, занятого тем же файлом.
Дата добавления: 2015-09-06; просмотров: 223 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Форматирование высокого уровня | | | И. И. Матвеенко, Е. С. Лен |