HPFS (Организация файловых систем в OS (2 (WinWord)), страница 2
Описание файла
Документ из архива "Организация файловых систем в OS (2 (WinWord)", который расположен в категории "". Всё это находится в предмете "информатика" из , которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "рефераты, доклады и презентации", в предмете "информатика, программирование" в общих файлах.
Онлайн просмотр документа "HPFS"
Текст 2 страницы из документа "HPFS"
Отказоустойчивость
Первичный механизм для коррекции ошибок записи называется hotfix. Если обнаружена ошибка, файловая система берет свободный блок вне резервного пула hotfix, записывает данные в этот блок, и модифицирует карту hotfix. (Карта hotfix представляет собой двойные слова, содержащие номер плохого сектора связанный с номером замены. Указатель на hotfix находится в SpareBlock). Выдается предупредительное сообщение, и пользователь знает, что все хорошо не с дисковым устройством.
Каждый раз когда файловая система запрашивает сектор, дисковый драйвер просматривает карту hotfix и заменяет любые плохие номера секторов на соответствующие хорошие.
CHKDSK освобождает карту hotfix. Он добавляет плохой сектор в список плохих блоков, выпускает сектор замены обратно в пул hotfix, удаляет hotfix вход из карты hotfix, и записывает модифицированный hotfix.
HPFS защищает себя от пользователей, слишком любящих Красный_Переключатель и поддерживает флажок Dirty FS, помечающий в SpareBlock каждый HPFS том. Флажок очищается только когда все файлы тома закрылись и все буферизованные в кэше данные были записаны.
В течение загрузки OS/2, файловая система осматривает DirtyFS и, если флажок установлен, не будет позволять дальнейший доступ к тому до тех пор, пока CHKDSK не закончит работу. Если флажок DirtyFS установлен на томе начальной загрузки, система не будет загружена; пользователь должен загружать OS/2 в режиме с дискеты и выполнить CHKDSK для проверки и возможно ремонта тома начальной загрузки.
При потере SuperBlock или корневой директории, HPFS имеет возможность успешно восстановить их. Каждый тип, определяющий файл, включая объект Fnodes, секторы распределения, и каталоги блоков компонуются так, что и хозяин и дочерние записи и содержит уникальную сигнатуру с 32 битами. Fnodes также содержат начальную часть имени каталога или файлов. Следовательно, CHKDSK может восстановить весь том методом просмотр диска для Fnodes, секторов распределения, и блоки каталога, использовав их для восстановления файлов, каталогов и freespace - списков.
Прикладные Программы и HPFS
Новые функции API, DosCopy помогают прикладным программам создавать копии, по существу дублируя существующий файл вместе с EAs. EAs может также управляться явно с DosQFileInfo, DosSetFileInfo, DosQPathInfo, и DosSetPathInfo.
Другие изменения в API не будут воздействовать на среднюю прикладную программу. Функции DosQFileInfo, DosFindFirst, и DosFindNext.
DosQFsInfo используется для получения метки тома или дисковых характеристик точно как прежде, и использование DosSetFsInfo для меток тома не изменяется. Имеются a немногие полностью новые функции API типа DosFsCtl (аналогичный DosDev IOCtl но используемый для связи между прикладной программой и FSD), и DosQFsAttach (определяет, какой FSD имеет том); они предназначаются главным образом для использования дисковыми сервисными программами.
Дополнения
Структура системы файлов FAT
00Н | 01Н | Идентификатор дисковода |
01Н | 09Н | Имя файла (8 символов) |
09Н | 0СН | Расширение (3 символа) |
0СН | 0ЕН | Номер текущего блока |
0ЕН | 10Н | Размер записи |
10Н | 14Н | Размер файла |
14Н | 16Н | Дата создания (обновления) |
16Н | 18Н | Время создания (обновления) |
18Н | 20Н | Зарезервировано |
20Н | 21Н | Номер текущей записи |
2 1Н | 25Н | Номер относительной записи |
B Tree и B+Tree
Многие программисты не знакомы со структурой данных, известной как двоичное дерево. Двоичные деревья это методика для логического упорядочивания совокупности элементов данных.
В простом двоичном дереве каждый узел содержит некоторые данные, включая значение ключа, которое определяет логическую позицию узла в дереве, и указатели на левые и правые поддеревья узла. Узел который начинает дерево известен как корень; узлы которые сидят на конце ветви дерева иногда называются уходами.
Такие простые двоичные деревья, хотя просты в понимании и применении, имеют недостатки (неудобства), обнаруженные практикой. Если ключи распределяются не оптимально или добавляются к дереву в непроизвольном режиме, дерево может становиться совершенно асимметричным, что приводит к большим различиям между временами обхода дерева.
Поэтому большое количество программистов предпочитают в использовании сбалансированные деревья известные как B-Tree.
00Н | 01Н | 0FFH |
01Н | 06Н | Зарезервировано |
06Н | 07Н | Байт атрибута |
07Н | 08Н | Идентификатор дисковода |
08Н | 10Н | Имя файла (8 символов) |
10Н | 13Н | Расширение (3 символа) |
13Н | 15Н | Номер текущего блока |
15Н | 17Н | Размер записи |
17Н | 1ВН | Размер файла |
1BН | 1DН | Дата создания (обновления) |
1DН | 1FН | Время создания (обновления) |
1FН | 27H | Зарезервировано |
27H | 28H | Номер текущей записи |
28H | 2CH | Номер относительной записи |
Резюме
Резюме.
HPFS решает все исторические проблемы файловой системы FAT. Он достигает превосходной производительности даже при экстремальных ситуациях, например когда очень маленькие файлы и их очень много или немногие очень большие файлы. Это свидетельствует о продуманных структурах данных и преимуществах техники типа интеллектуального кэширования, предварительного чтения, отложенной записи. Дисковое пространство используется экономно. Существующие прикладные программы нуждаются в модификации для использования преимуществ поддержки HPFS для расширенных атрибутов и длинных имен файлов, но эти изменения не сложны. Все прикладные программы будут извлекать пользу из высокой эффективности HPFS и уменьшенной загрузки CPU.
Список использованной литературы:
-
Microsoft Systems Journal, Sept 1989. Получен из Computer Library Periodicals, Jan 1990, Doc #14753
-
OS/2 Warp, К. Данильченко, BHV Київ, 1995
-
Профессиональная работа в MS-DOS, Р.Данкан, Мир, 1993
1 О двоичных деревьях B-Tree смотри в дополнении