Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Область файлов и каталогов, понятие кластераСодержание книги Похожие статьи вашей тематики
Поиск на нашем сайте
После корневого каталога на диске следуют сектора, где собственно и хранятся файлы и каталоги (все каталоги кроме корневого тоже можно рассматривать как особые файлы). Эта область называется областью файлов и каталогов (File and Directory Data Region) или просто областью данных. Область данных предназначена для размещения всех файлов и всех каталогов, кроме корневого каталога. Вся эта область разделена на так называемые кластеры. Кластер (cluster) – это логическая единица хранения данных, объединяющая группу секторов. Например, на дисках с размером секторов в 512 байт, 512-байтный кластер содержит один сектор, тогда как 4-килобайтный кластер содержит восемь секторов. Это наименьшее место на диске, которое может быть выделено для хранения файла. Размер кластера (число секторов) выбирается кратным степени числа 2 (размер кластера может быть описан формулой 2n*512). Это означает, что кластер может иметь размер 512, 1024, 2048, 4096 и.т.д. байт. Конкретный размер кластера на диске задается при его форматировании в зависимости oт объема диска и размера FAT Файл на диске занимает целое число кластеров, от одного до всех кластеров, входящих в область данных. Количество файлов на диске не может превышать количества кластеров Каждый кластер имеет свой номер, который может использоваться для указания места на диске. Структура каталога и дескриптора файла Как мы уже говорили, любой каталог содержит 32-байтовые элементы – дескрипторы (Descriptor – дословно описатель, описательный элемент), описывающие файлы и другие каталоги. Поля дескриптора описывают различные характеристики файла (или каталога). Приведем формат дескриптора файла (Таблица 6): Таблица 6 Формат дескриптора файла
Остановимся на понятии атрибутов файла. Атрибут – признак, дополнительно характеризующий некоторые свойства файла или каталога. В FAT атрибуты занимают один байт, каждый из атрибутов кодируется одним битом. Биты этого байта имеют следующие значения:
Таблица 7. Атрибуты файлов.
Информация, хранимая в атрибутах, используется операционной системой при выполнении файловых операций. Например, значение атрибута DIRECTORY позволяет отличать файл от подчиненного каталога, а по значению атрибута ARCHIVE отбираются файлы для резервного копирования. Атрибут READ ONLY запрещает изменять и удалять файл, а атрибут HIDDEN делает файл «невидимым». Биты атрибутов VOLUME и DIRECTORY может изменить только операционная система, остальные атрибуты могут изменяться пользователем. Итак, мы видим, что в дескрипторе указывается имя и тип файла, длина, дата создания и некоторые его атрибуты, а также что важно, номер начального кластера этого файла. Если файл занимает один кластер мы имеем полную информацию о его размещении на диске, если файл не помещается в кластер для получении информации о его размещении нужно будет обратиться к таблице размещения файлов (FAT). Структура FAT Расположение файлов в кластерах определяется с помощью таблицы распределения файлов FAT. FAT - это связанный список, который обеспечивает возможность фрагментарного расположения файлов на диске (т.е. расположения файлов по частям в разных местах диска). Этот список используется файловой системой для определения последовательности кластеров, выделенных файлу или каталогу, а также для поиска свободного пространства, необходимого для записи новых файлов и каталогов. Число элементов этого списка равно числу кластеров области данных диска. Каждому кластеру из области данных соответствует свой элемент из таблицы FAT. Иными словами FAT состоит из элементов, элементов в таблице ровно столько, сколько кластеров на диске, и кластеру с номером N соответствует элемент FAT с тем же номером N. Каждый из элементов FAT представляющий один кластер может содержать следующие коды (см. таблицу 8): Таблица 8. Возможные значения элемента FAT
Вернемся к задаче определения точного места на диске (номеров кластеров), где располагается файл. Если файл занимает более одного кластера, то все кластеры, занимаемые файлом, организуются в цепочку кластеров (cluster chain). Для того чтобы прочитать файл целиком, необходимо найти его дескриптор в каталоге и считать первый кластер, на который ссылается этот дескриптор – это будет начало файла. Далее следует прочитать соответствующий первому кластеру элемент FAT и определить, является ли он последним (соответствующий означает, что кластеру с номером N соответствует элемент из таблицы FAT тоже с номером N). Если прочитанный элемент FAT не содержит признака конца файла (EOF), то он показывает номер следующего кластера цепочки, который также должен быть считан. Снова проверяем очередной элемент FAT. Повторяем это до тех пор, пока очередь не дойдет до последнего кластера в цепочке. Пример цепочки кластеров Пусть некоторый каталог содержит дескриптор файла (обозначим его А.txt), в которой содержится ссылка на начальный кластер (кластер № 18) из цепочки кластеров, выделенных этому файлу. На рисунке 6 обычным шрифтом обозначены номера элементов FAT (номера элементов FAT соответствуют номерам кластеров), а жирным шрифтом обозначены числовые значения, записанные в этих элементах.
Из приведенного на рисунке 6 фрагмента FAT следует: Файл занимает цепочку из десяти кластеров: 12–13–14–17–18–20–21–22–23. Каждый элемент указывает на следующий элемент цепочки - значение элемента № 13 равно 14, значение элемента 14 равно 17 и т.д. Последний элемент содержит специальный код EOF (FF8h) - конец файла. Еще одна цепочка из двух кластеров начинается с кластера № 15 и кончается кластером № 16. Чтобы узнать, какому файлу (или каталогу) распределены эти кластеры, нужно отыскать в каком-либо каталоге диска дескриптор файла, содержащий ссылку на начальный кластер № 15. Кластер № 19 помечен, как «плохой» (BAD - FF7) и не входит ни в одну из цепочек. При поиске свободных кластеров для записи нового файла этот кластер будет игнорироваться. Кластеры № 10, 11, 24, 25, 26 пусты (точнее - объявлены таковыми). Они доступны для распределения под вновь записываемые файлы. Каждая цепочка кластеров, выделенных системой для одного файла (подкаталога), упорядочена в порядке возрастания их номеров.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2016-04-08; просмотров: 1144; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.222.184.207 (0.011 с.) |