Операционные системы
В файловой системе FAT16 под номер кластера отведено 16 разрядов. Поэтому максимальное количество кластеров составляет 65 525, а максимальный размер кластера 128 секторов. В таком случае максимальный размер разделов или дисков в FAT16 составляет 4,2 гигабайта. При логическом форматировании диска или раздела операционная система старается использовать минимальный размер кластера, при котором… Читать ещё >
Операционные системы (реферат, курсовая, диплом, контрольная)
Задание № 1
Файловая система FAT
Файловая система FAT (File Allocation Table) была разработана Биллом Гейтсом и Марком Макдональдом в 1977 году для операционной системы (ОС) MS-DOS. Существуют три её разновидности: FAT12, FAT16 (или просто FAT), FAT32. Файловая система получила название по своему главному элементу — File Allocation Table (Таблица размещения файлов). Данная система применяется только для жёстких дисков и дискет.
Система FAT используемая в Windows, устанавливает размер блоков данных, передаваемых диском, в соответствии с размером кластера в DOS. Как и во многих других файловых системах, в FAT не предусмотрено распределение пространства на диске таким образом, чтобы оно точно соответствовало объему файлов. Вместо этого дисковое пространство делится на элементы, называемые кластерами. Размер кластера изменяется в зависимости от типа и размера диска. Обычно размеры кластеров невелики, и этот фактор не является определяющим для производительности системы. А величина кластеров HDD (FAT16) может в значительной мере повлиять на ее быстродействие.
В модификации FAT-а предусмотрено увеличение размера записи с 16 до 32 битов (FAT32) Это позволяет адресовать и размещать большее количество кластеров на диске.
FAT файловая система была впервые введена во времена MS-DOS в далеком 1981 году. Цель таблицы размещения файлов заключается в обеспечении соответствия между кластерами и физическое расположение данных в терминах цилиндров, дорожек и секторов — форма обращения использовались аппаратно контроллер диска.
Первое воплощение FAT был известен как FAT12, которая поддерживается максимальный размер раздела 8 МБ. Это было заменено в 1984 году FAT16, который увеличил максимальный размер раздела до 2 Гб. FAT16 претерпел ряд незначительных изменений на протяжении многих лет, например, что позволяет ей обрабатывать имена файлов длиннее оригинального ограничение в 8,3 символов. Основные ограничения FAT16 является то, что она накладывает фиксированных максимальное количество кластеров на раздел, а это означает, что чем больше жесткий диск, тем больше размер кластера и более непригодным для использования места на диске. Самым большим преимуществом FAT16 является то, что она совместима через широкий спектр операционных систем, включая Windows.
Файловая система FAT 16
Файловая система FAT 16, являющаяся основной для операционных систем DOS, Windows 95,98,Me, Windows NT, 2000, XP, а также поддерживается большинством других систем. FAT 16 представляет собой простую файловую систему, разработанную для небольших дисков и простых структур каталогов. Таблица размещается в начале диска. Число 16 означает, что данная файловая система 16-разрядная — для адресации кластеров используется 16 разрядов. Операционная система использует Таблицу размещения файлов для поиска файла и определения кластеров, которые этот файл занимает на жестком диске. Кроме того, в Таблице фиксируются сведения о свободных и дефектных кластерах. (Чтобы легче было осмыслить файловую систему FAT16 её можно представить в виде оглавления книги и работы с этим оглавлением, вот именно также операционная система работает с FAT 16)
Чтобы прочитать файл, операционная система должна найти по имени файла запись в папке и прочитать номер первого кластера файла. Первый кластер представляет собой начало файла. Затем необходимо прочитать соответствующий первому кластеру файла элемент FAT. Если элемент содержит метку — последний в цепочке, то дальше ни чего искать не нужно: весь файл умещается в одном кластере. Если кластер не последний, то элемент таблицы содержит номер следующего кластера. Содержимое следующего кластера должно быть прочитано вслед за первым. Когда будет найден последний кластер в цепочке, то, если файл не занимает весь кластер целиком, необходимо отсечь лишние байты кластера. Лишние байты отсекаются по длине файла, хранящейся в записи папки.
Чтобы записать файл, операционная система должна выполнить следующую последовательность действий. В свободном элементе папки создается описание файла, затем ищется свободный элемент FAT, и ссылка на него размещается в записи папки. Занимается первый кластер, описываемый найденным элементом FAT. В этот элемент FAT помещается номер следующего кластера или признак последнего кластера в цепочке.
Операционная система действует таким образом, чтобы собирать цепочки из соседних кластеров по нарастанию номера. Понятно, что обращение к последовательно расположенным кластерам будет происходить значительно быстрее, чем к кластерам, случайным образом, разбросанным по диску. При этом игнорируются уже занятые и помеченные в FAT как дефектные кластеры.
В файловой системе FAT16 под номер кластера отведено 16 разрядов. Поэтому максимальное количество кластеров составляет 65 525, а максимальный размер кластера 128 секторов. В таком случае максимальный размер разделов или дисков в FAT16 составляет 4,2 гигабайта. При логическом форматировании диска или раздела операционная система старается использовать минимальный размер кластера, при котором получающееся количество кластеров не превышает 65 525. Очевидно, что чем больше размер раздела, тем больше должен быть размер кластера. Многие операционные системы неправильно работают с кластером размером в 128 секторов. В результате максимальный размер раздела FAT16 уменьшается до 2 гигабайт. Обычно чем больше размер кластера, тем больше становятся потери дискового пространства. Это связано с тем, что последний кластер, занимаемый файлом, заполнен лишь частично. Например, если файл размером 17 Кбайт записывается в раздел с размером кластера 16 Кбайт, то этот файл займет два кластера, причем первый кластер будет заполнен полностью, а во втором кластере будет записан только 1 Кбайт данных, а остальные 15 Кбайт пространства второго кластера останутся не заполненными и будут недоступными для записи других файлов. Если на больших дисках записывается большое количество маленьких файлов, то потери дискового пространства будут значительны. В следующей таблице приводятся сведения о возможных потерях дискового пространства при разных размерах раздела.
Размер раздела | Размер кластера | Потери дискового пространства | |
127 Мб | 2 Кб | 2% | |
128−255 Мб | 4 Кб | 4% | |
256−511 МБ | 8 Кб | 10% | |
512−1023 МБ | 16 Кб | 25% | |
1024−2047 МБ | 32 Кб | 40% | |
2048;4096 Мб | 64 Кб | 50% | |
Возможны два способа уменьшения потерь дискового пространства.
Первый — разбиение дискового пространства на мелкие разделы с малым размером кластера. Второй — использование иной файловой системы, в которой для нумерации кластеров используется другое количество разрядов, что позволяет значительно уменьшить размер кластера.
Из всего выше сказанного следует, что основными недостатками файловой системы FAT16 являются:
— Невозможность поддержки разделов диска размером больше 2 Гб;
— Невозможность работы с файлами размером более 2 Гб;
— Невозможность работы с жесткими дисками емкостью более 8 Гб;
— Ограниченный размер корневой папки, которая может содержать не более 512 элементов.
Файловая система FAT32
Для работы с большими дисками была разработана новая файловая система FAT32. Microsoft впервые представляет файловую систему FAT32 в операционной системе Windows 95 OSR2. В этой ФС, как следует из названия разрядность указателя на кластер увеличивается до 32 бит, что значительно увеличивает количество поддерживаемых кластеров, и, следовательно, позволяет уменьшить их размер. Вы видите, что разрядность указателя составляет 32 бита и, даже используя кластер 512 байт, эта файловая система может поддерживать диски в 127,9 Гбайт. А при использовании кластера 32 Кбайт она может поддерживать диски до 2 Тбайт.
На первый взгляд может показаться, что теперь можно использовать кластер размеров в один блок (512 байт), уменьшив тем самым потери в хвостах файлов почти до нуля, но использование таких малых кластеров все же не выгодно из соображений производительности. Вы помните, что информация о расположении файла по кластерам содержится в FAT таблице. Чем меньше размер кластера, тем больше кластеров займет файл и тем больше записей появится в таблице и соответственно тем дольше будет происходить считывание информации о расположении файла при доступе к нему.
Еще один важный момент. Во время работы файловые таблицы переносятся в оперативную память. И это логично. Ведь считать из оперативной памяти информацию о файле можно гораздо быстрее, чем с жесткого диска. При этом, чем меньше размер кластера, тем больше записей в файловой таблице и, соответственно, больше ее объем. А это, в свою очередь, влияет на требования к размеру оперативной памяти.
Быстродействие системы FAT32 можно повысить, увеличив размер кластера. Увеличивая кластер в два раза, мы сокращаем область FAT тоже в два раза. В FAT32 это очень важная для быстродействия область занимает несколько Мбайт. Сокращение области FAT в несколько раз даст заметное увеличение быстродействия, так как объем системных данных файловой системы сильно сократится — уменьшится и время, затрачиваемое на чтение данных о расположении файлов. Обратная сторона — существенно возрастают потери дискового пространства.
Получается замкнутый круг: чем больше размер кластера, тем выше быстродействие, но возрастают и потери дискового пространства; чем меньше размер кластера, тем более экономно расходуется дисковое пространство, но катастрофически падает быстродействие. Поэтому минимальный кластер в FAT32 был выбран размером 4 Кбайта, как компромисс между эффективностью хранения данных и производительностью.
Поскольку эта файловая система предназначалась для работы с большими дисками, давайте рассмотрим ее с этой стороны.
Большие диски нужны для хранения больших объемов данных. С увеличением числа файлов будет расти и размер таблицы их размещения. Поскольку просмотр таблицы линейный, то в какой-то момент быстродействие дисковых операций значительно упадет. А это уже очень неприятный момент.
В Windows XP/2000 максимальный размер раздела, который можно отформатировать с помощью FAT32, равен 32 Гбайт, не смотря на теоретический предел в 4 Тбайт. Видимо, Microsoft нашла ту точку, дальше которой идти не имеет смысла. Несмотря на это, вы можете работать с разделами FAT32 более 32 Гбайт, если они были отформатированы с помощью другой ОС.
Рассмотрим еще некоторые особенности FAT32. В FAT32 были расширены атрибуты файлов, позволяющие теперь хранить время и дату создания, модификации и последнего доступа к файлу или каталогу.
Корневой каталог в FAT32 больше не располагается в определенном месте, вместо этого хранится указатель на начальный кластер корневого каталога. В результате снимается ранее существовавшее ограничение на число записей в корневом каталоге.
Кроме того, для учета свободных кластеров, в зарезервированной области на разделе FAT32 имеется сектор, содержащий число свободных кластеров и номер самого последнего использованного кластера. Это позволяет системе при выделении следующего кластера не перечитывать заново всю таблицу размещения файла.
Из вышесказанного краткие выводы о файловой системе FAT 32:
1) Намного эффективнее расходует дисковое пространство за счет того, что использует кластеры меньшего размера (4 Кб) — подсчитано, что экономится до 15%.
2) Имеет расширенную загрузочную запись, которая позволяет создавать копии критических структур данных? повышает устойчивость диска к нарушениям структур диска
3) Может использовать резервную копию FAT вместо стандартной.
4) Может перемещать корневой каталог, другими словами, корневой каталог может находиться в произвольном месте? снимает ограничение на размер корневого каталога (512 элементов, т.к. ROOT должен был занимать один кластер).
5) Усовершенствована структура корневого каталога Появились дополнительные поля, например, время создания, дата создания, дата последнего доступа, контрольная сумма По-прежнему для длинного имени файла используется несколько дескрипторов.
Сравнение файловых систем FAT16 и FAT32
FAT16 | FAT32 | |
Реализована и используется большинством операционных систем (MS-DOS, Windows 95/98/ Me, Windows 2000 и Windows XP, OS/2, UNIX). | На данный момент поддерживается только в Windows 95/98/ Me, Windows 2000 и Windows XP . | |
Очень эффективна для логических дисков размером менее 256 Мбайт. | Не работает с дисками объемом менее 512 Мбайт. | |
Поддерживает сжатие дисков, например по алгоритму DriveSpace. | Не поддерживает сжатие дисков. | |
Обрабатывает максимум 65 525 кластеров, размер которых зависит от объема логического диска. Так как максимальный размер кластеров равен 32 Кбайт, FAT16 может работать с логическими дисками объемом не более 2 Гбайт. | Способна работать с логическими дисками объемом до 2 047 Гбайт при максимальном размере кластеров в 32 Кбайт. | |
Чем больше размер логического диска, тем меньше эффективность хранения файлов в FAT'16-системе, так как увеличивается и размер кластеров. Пространство для файлов выделяется кластерами, и поэтому при максимальном объеме логического диска файл размером 10 Кбайт потребует 32 Кбайт, а 22 Кбайт дискового пространства пропадет впустую. | На логических дисках объемом менее 8 Гбайт размер кластеров составляет 4 Кбайт. | |
В файловой системе FAT32 на каждый кластер в таблице размещения файлов отводится по 4 байта, тогда как в FAT16 — по 2, а в FАТ12 — по 1,5.
Старшие 4 бита 32-разрядного элемента таблицы FAT32 зарезервированы и не участвуют в формировании номера кластера. Программы, напрямую считывающие FАТ32-таблицу, должны маскировать эти биты и предохранять их от изменения при записи новых значений.
файловый система каталог кластер Структура системы FAT
Содержимое | Области | Описание | |
Загрузочный сектор | Системная область | Системная область — самая маленькая по размеру. В ней содержится очень важная информация: адреса таблицы FAT и области данных, размер области данных, таблицы FATи всего диска, размер кластера, число кластеров. Здесь также могут находиться программа загрузки ОС (если диск загрузочный), копия загрузочного диска и информация о свободном месте на диске. | |
Элемент FAT 1 | Таблица FAT (менее 1%) | Область FAT состоит из элементов таблицы FAT, число которых равно числу кластеров. Каждый элемент соответствует своему кластеру. Элемент FAT занимает 12 бит на FAT12, 16 бит на FAT16 и 32 бита на FAT32. | |
Элемент FAT 2 | |||
Элемент FAT 3 | |||
Элемент FAT 4 | |||
.. . | |||
Элемент 1 | Копия FAT | Копия главной таблицы FAT, идентична ей. Используется для восстановления, если главная повреждена. | |
Элемент 2 | |||
Элемент 3 | |||
Элемент 4 | |||
.. . | |||
Содержимое корневого каталога | Корневой каталог | На FAT12/FAT16 корневой каталог зачем-то выделен в отдельное место. На FAT32 это обычный файл, то есть этого поля нет. | |
Кластер 1 | Данные (больше 99%) | Область данных разбита на кластеры (от 1 до 64 секторов). Это сама большая область, так как в ней находятся все данные вашего диска (каталоги и файлы). Каждому кластеру в области данных соответствует элемент таблицы FAT. | |
В файловой системе FAT дисковое пространство любого логического диска делится на две области:
— системную область и
— область данных.
Системная область создается и инициализируется при форматировании, а впоследствии обновляется при манипулировании файловой структурой.
Системная область состоит из следующих компонентов:
— загрузочного сектора, содержащего загрузочную запись (boot record);
— зарезервированных секторов (их может и не быть);
— таблицы размещения файлов (FAT, File Allocation Table);
— корневого каталога (Root directory, ROOT).
Эти компоненты расположены на диске друг за другом.
Область данных содержит файлы и каталоги, подчиненные корневому.
Область данных разбивают на так называемые кластеры. Кластер — это один или несколько смежных секторов области данных. С другой стороны, кластер — это минимальная адресуемая единица дисковой памяти, выделяемая файлу. Т. е. файл или каталог занимает целое число кластеров. Для создания и записи на диск нового файла операционная система отводит для него несколько свободных кластеров диска. Эти кластеры не обязательно должны следовать друг за другом. Для каждого файла хранится список всех номеров кластеров, которые предоставлены данному файлу.
Разбиение области данных на кластеры вместо использования секторов позволяет:
— уменьшить размер таблицы FAT;
— уменьшить фрагментацию файлов;
— сокращается длина цепочек файла? ускоряется доступ к файлу.
Однако слишком большой размер кластера ведет к неэффективному использованию области данных, особенно в случае большого количества маленьких файлов (ведь на каждый файл теряется в среднем полкластера).
В современных файловых системах (FAT32, HPFS, NTFS) эта проблема решается за счет ограничения размера кластера (максимум 4 Кбайта) Картой области данных является Таблица размещения файлов (File Allocation Table — FAT) Каждый элемент таблицы FAT (12, 16 или 32 бит) соответствует одному кластеру диска и характеризует его состояние: свободен, занят или является сбойным кластером (bad cluster).
— Если кластер распределен какому-либо файлу (т.е., занят), то соответствующий элемент FAT содержит номер следующего кластера файла;
— последний кластер файла отмечается числом в диапазоне FF8h — FFFh (FFF8h — FFFFh);
— если кластер является свободным, он содержит нулевое значение 000h (0000h);
— кластер, непригодный для использования (сбойный), отмечается числом FF7h (FFF7h).
Таким образом, в таблице FAT кластеры, принадлежащие одному файлу, связываются в цепочки.
Таблица размещения файлов хранится сразу после загрузочной записи логического диска, ее точное расположение описано в специальном поле в загрузочном секторе. Она хранится в двух идентичных экземплярах, которые следуют друг за другом. При разрушении первой копии таблицы используется вторая.
В связи с тем, что FAT используется очень интенсивно при доступе к диску, она обычно загружается в ОП (в буфера ввода/вывода или кэш) и остается там настолько долго, насколько это возможно.
Основной недостаток FAT — медленная работа с файлами. При создании файла работает правило — выделяется первый свободный кластер. Это ведет к фрагментации диска и сложным цепочкам файлов. Отсюда следует замедление работы с файлами.
Подробная информация о самом файле хранится в другой структуре, которая называется корневым каталогом. Каждый логический диск имеет свой корневой каталог (ROOT, англ. — корень).
Корневой каталог описывает файлы и другие каталоги. Элементом каталога является дескриптор (описатель) файла.
Дескриптор каждого файла и каталога включает его
— имя
— расширение
— дату создания или последней модификации
— время создания или последней модификации
— атрибуты (архивный, атрибут каталога, атрибут тома, системный, скрытый, только для чтения)
— длину файла (для каталога — 0)
— зарезервированное поле, которое не используется
— номер первого кластера в цепочке кластеров, отведенных файлу или каталогу; получив этот номер, операционная система, обращаясь к таблице FAT, узнает и все остальные номера кластеров файла.
Итак, пользователь запускает файл на выполнение. Операционная система ищет файл с нужным именем, просматривая описания файлов в текущем каталоге. Когда найден требуемый элемент в текущем каталоге, операционная система считывает номер первого кластера данного файла, а затем по таблице FAT определяет остальные номера кластеров. Данные из этих кластеров считываются в оперативную память, объединяясь в один непрерывный участок. Операционная система передает управление файлу, и программа начинает работать.
Для просмотра и редактирования корневого каталога ROOT можно также использовать утилиту Disk Editor.
Задание № 2
1. В каком году была разработана файловая система FAT ?
1) 1977
2) 1981
3) 1964
Правильный ответ: 1
2. Файловая система FAT является частью:
1) дисковых систем
2) драйверов дисков
3) ОС
4) пользовательских программ Правильный ответ: 3
3. Какую структуру образуют файлы в ФС (файловой системе) FAT?
1) древовидную
2) сетевую
3) реляционную
4) плоскую Правильный ответ: 2
4. В ФС FAT атрибуты файлов хранятся :
1) вместе с файлом
2) в каталогах
3) в индексных дескрипторах
4) в таблицах FAT
Правильный ответ: 1
5. Числовое значение -12, 16, 32 — в файловой системе FAT отражает:
1) размер кластера на диске
2) разрядность элемента в таблице FAT
3) допустимое количество символов в имени файла Правильный ответ: 2
6. Максимальный размер диска, поддерживаемого FAT16:
1) практически неограничен
2) 512 Мбайт
3) 2 Гбайта Правильный ответ: 3
7. Недостатки файловой системы FAT:
1) сложность реализации
2) не поддерживают разграничения доступа к файлам и каталогам
3) не поддерживают длинных имен файлов
4) не содержат средств поддержки отказоустойчивости Правильный ответ: 2
8. Сколько элементов может содержать в себе корневой каталог?
1) 65 264
2) 65 255
3) 65 535
4) 65 256
Правильный ответ: 3
9. Что хранит в себе область данных?
1) Корневой каталог
2) Файлы для загрузки ОС
3) Название операционной системы Правильный ответ: 1
10. Какой из элементов файловой структуры FAT не верен?
1) Загрузочный сектор
2) Корневой каталог
3) Таблица размещения файлов
4) Область данных
5) Управляющий суперблок Правильный ответ: 5
11. Какого типа файловой системы FAT не существует?
1) 8
2) 12
3) 16
4) 32
5) 64
Правильный ответ: 5
12. Какие операционные системы поддерживает ФС FAT?
1) Microsoft Windows
2) Linux
3) OS/2
4) Mac OS
5) MS-DOS
Правильный ответ: 1,5
13. Файловая система FAT является частью:
1) дисковых систем
2) драйверов дисков
3) ОС
4) пользовательских программ Правильный ответ: 3
14. Что означает «0» в элементе таблицы FAT для некоторого кластера?
1) в кластере нельзя размещать данные
2) конец файла
3) свободный кластер Правильный ответ: 3
15. Что означает «7» в элементе таблицы FAT для некоторого кластера?
1) кластер поврежден
2) Зарезервированный кластер
3) Номер следующего кластера в списке Правильный ответ: 1
16. Таблица размещения файлов содержит :
1) Файл, хранящий ссылки на другие файлы и каталоги
2) Каталог всех файлов, хранящихся на диске
3) Номера кластеров, в которых расположены файлы на диске
4) Все операции записи и чтения Правильный ответ: 3
17. Корневой каталог в структуре FAT это?
1) Файлы для загрузки ОС
2) Это база данных, содержащая всю информацию о записанных на диске файлах
3) Это первый сектор на любой области диска
4) Содержит расположение загрузочных секторов Правильный ответ: 2
18. Загрузочный сектор на любом логическом диске (разделе) располагается:
1) первым
2) вторым
3) третьим
4) последним Правильный ответ: 1
19. Кластером в FAT является?
1) минимальная адресуемая единица дисковой памяти, выделяемая файлу
2) файлы и каталоги
3) сектора и дорожки Правильный ответ: 1
20. На диске не может быть кластера размером:
1) 512 байт
2) 1024 байта
3) 1536 байт
4) 2048 байт Правильный ответ: 3
Список используемой литературы
1) Орлов С., Цилькер Б. Организация ЭВМ и систем: Питер, 2007, 672 с.
2) Мелехин В. Ф., Павловский Е. Г. Вычислительные машины, системы и сети, 3-е изд.: М.: Издательский центр «Академия», 2007, 560 с.
3) Гордеев А. В. Операционные системы. Учебник для вузов. 2-е изд.: Питер, 2004, 416 с.
4) Таненбаум Э. С. Перевод: А. Леонтьев Современные операционные системы: Питер, 2002, 1040 с.
5) А. В. Гордеев, А. Ю. Молчанов. Системное программное обеспечение / - СПб.: Питер — 2002 г.