![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
В системе LBA (Logical Block Addressing) используется линейная адресацию секторов, начиная с сектора 1, головки 0, цилиндра 0 и заканчивая последним физическим сектором диска. Адрес начального сектора диска обозначается как LBA 0. Номер сектора в системе LBA определяется выражением:
LBA = (СхHmax + H)xSmax + S – 1
где С, H, S – координаты сектора в системе CHS,
Hmax – общее количество рабочих поверхностей дисков,
Smax – число секторов на дорожке.
5.2. Логическая структура диска
Дорожки, секторы и кластеры являются понятиями, относящимися к физической структуре диска. Однако пользователю удобнее работать с диском на логическом уровне, т.е. иметь дело с именованными элементами дискового пространства вместо численных адресов секторов и кластеров. Структура диска, описанная таким образом, называется логической. Схематически логическая структура диска [1] показана на рис. 5.2. Жирный прямоугольник в центре рисунка изображает дисковое пространство реального физического устройства. Оно разбито на разделы (Partition). Разделы бывают первичные (Primery) и расширенные (Extended). На диске может быть только один расширенный раздел, который в свою очередь может быть разбит на разделы. На всех разделах создаются логические диски[8]. На рис. 5.2 показаны один первичный раздел с логическим диском С: и расширенный раздел с логическими дисками D: и Е:. Один из разделов всегда активен, остальные – пассивны.
![]() | |||||
![]() ![]() | ![]() | Загрузочный сектор диска С: | ![]() | Первичный раздел с логическим диском С: | |
Master Boot Record | |||||
![]() | |||||
![]() | ![]() ![]() | Загрузочный сектор диска D: | ![]() | ||
![]() | |||||
Secondary Master Boot Record | |||||
Расширенный раздел с логическими дисками D: и Е: | |||||
![]() | ![]() | Загрузочный сектор диска Е: | |||
0 – конец цепочки Прочая информация Системный загрузчик | |||||
Secondary Master Boot Record | |||||
![]() | |||||
Нераспределённое дисковое пространство |
Рис. 5.2. Разделы жёсткого диска
На первом секторе каждого диска создаётся загрузочная запись Master Boot Record для логического диска первичного раздела и Secondary Master Boot Record для каждого логического диска расширенного раздела. На первом секторе логического диска С: располагается также специальная программа, которая называется внесистемным загрузчиком Non-Systeb Bootstrap (NSB). На любом из логических дисков может быть установлена операционная система.
Содержимое загрузочных записей логического диска показано в левой части рисунка. В этих записях содержатся главная и последующие таблицы разделов. Важнейшей информацией в этих таблицах являются:
· флаг активности раздела;
· номер головки начала раздела;
· номера сектора и цилиндра загрузочного сектора раздела (адрес начала раздела);
· кодовый идентификатор[9] операционной системы (например, 006h для FAT16);
· номер головки конца раздела;
· номера сектора и цилиндра последнего сектора раздела (адрес конца
раздела);
· младшее и старшее двухбайтовые слова относительного номера начального сектора раздела;
· младшее и старшее двухбайтовые слова размера раздела в секторах.
При старте операционной системы в оперативную память автоматически загружается загрузочный сектор диска С:, и управление передаётся внесистемному загрузчику NBS, который выявляет активный раздел и с него производит загрузку операционной системы посредством системного загрузчика. Адреса начал логических дисков D:, E: и т.д. операционная система определяет по адресу конца раздела предшествующего диска. При установке на диск нескольких операционных систем выбор загружаемой системы осуществляется менеджером загрузки.
5.3. Создание загрузочных дисков
Загрузочные диски в разделах жёсткого диска в среде Windows создаются автоматически при установке операционной системы. Для этого с диска дистрибутива операционной системы запускается программа setup.exe. В процессе работы программы пользователь имеет возможность установить операционную систему Windows поверх имеющейся или с предварительным форматированием диска.
При желании во время установки операционной системы на жёсткий диск можно заказать создание загрузочной дискеты, которая может оказаться полезной в аварийных случаях и содержит важнейшие системные файлы: загрузчик, Msdos.sys, IO.sys, и command.com, а также драйвер для работы с компакт-диском. В настоящее время дисководы гибких дисков вытесняются с компьютеров, поэтому создание загрузочной дискеты практически потеряло смысл.
Контрольные вопросы:
Определите понятия: дорожка, цилиндр, сектор, кластер.
Поясните способы CHS и LBA адресации секторов на магнитном диске.
Поясните логическую структуру диска.
Каково содержимое Master Boot Record'а?
Каково содержимое Secondary Master Boot Record'а?
В чём проблема четырёх первичных разделов? Почему её желательно решить? Каковы способы решения этой проблемы?
Что такое внесистемный и системный загрузчики? Каковы их функции?
Опишите процесс загрузки операционной системы.
Каково содержимое таблиц разделов?
Какова процедура создания загрузочных дисков?
6. ФАЙЛОВЫЕ СИСТЕМЫ
6.1. Файлы и каталоги
Файл – это именованный набор данных, организованный в виде совокупности записей одинаковой структуры. Для пользователя файл – это форма существования документов, наборов данных и программ. Операционные системы поддерживают множество типов файлов: системные файлы, каталоги, обычные файлы, символьные специальные и блочные специальные файлы.
Системные файлы являются файлами, содержащими программные модули операционной системы или расширяющие её тем или иным способом. Обычно, имена системных файлов имеют расширение sys. Символьные специальные файлы используются для моделирования устройств с последовательным доступом к данным, а блочные специальные – для моделирования блочных устройств, например таких, как диски.
Простые файлы по назначению можно разделить на исполняемые файлы, динамические библиотеки и наборы данных. Исполняемые файлы содержат программный код в двух видах: в виде команд операционной системы и в машинных кодах. На наличие программного кода указывает расширения имени (тип) файла. В частности расширение bat указывает, что файл содержит программу на языке операционной системы, например операционной системы MS DOS, состоящую из команд path, copy, type, dir, chdir и т.д. Сведущий пользователь может прочитать эту программу в среде простейшего текстового редактора и понять её без каких-либо проблем. Расширения exe и com указывают на наличие кода в машинных командах. Файлы первого из них типа содержат прикладные программы пользователей, второго – как правило, утилиты, драйверы и прочие служебные программы. Расширения ovl указывают, что эти файлы содержат программный код и подгружаются в оперативную память по мере надобности и выгружаются из неё после выполнения содержащейся в них программы.
Динамически подключаемые библиотеки – это специальные файлы, содержащие программные коды, которые могут многократно использоваться параллельно работающими приложениями. Они содержат программный код, служебные таблицы и ресурсы. Примером такой библиотеки являются элементы управления программами ActiveX. На динамически подключаемую библиотеку указывает расширение dll.
Простые файлы, содержащие наборы данных имеют самые разные расширения имён. Иногда расширениенесёт информацию о назначении файла, например, jpeg указывает на графический файл, содержащий архивированную по специальному алгоритму информацию. В других случаях оно указывает на программное средство, в среде которого создан файл. Например, расширения bas и pas указывают на создание файлов среде систем программирования Basic и Pascal. Во многих случаях расширения имени (тип) файла ни о чём не говорит подавляющему большинству пользователей.
Ещё одним признаком, по которому различаются файлы, является доступ к данным. Файлы последовательного доступа имеют записи разной длины и обрабатываются запись за записью в порядке их следования в файле. Каждая запись оканчивается специальным символом, позволяющий позиционировать головки дисководов на начало следующей записи. Файлы произвольного доступа имеют записи постоянной длины и позволяют обращаться к любой записи в произвольном порядке. Файлы оканчиваются специальными символами.
Операционные системы поддерживают специальные характеристики файлов (табл. 6.1), которые называются атрибутами [3]. Операционная система может поддерживать не все атрибуты, перечисленные в табл. 6.1.
Таблица 6.1. Наиболее употребительные атрибуты файлов
Атрибут | Значение |
Защита | Кто и каким образом может получить доступ к файлу |
Пароль | Пароль для получения доступа к файлу |
Создатель | Идентификатор создателя файла |
Владелец | Текущий владелец файла |
Флаг "только для чтения" | 0 – для чтения-записи, 1 – только для чтения |
Флаг "скрытый" | 0 – обычный, 1 – не отображать в перечне файлов |
Флаг "Системный" | 0 – обычный, 1 – системный |
Флаг "архивный" | 0 – прошедший резервное копирование, 1 – нуждающийся в резервном копировании |
Флаг ASCII-двоичный | 0 – использован код ASCII, 1 – двоичный файл |
Флаг произвольного доступа | 0 – только последовательный доступ, 1 – произвольный доступ |
Флаг "временный" | 0 – обычный, 1 – удалять по окончании процесса |
Флаги блокировки | 0 – не заблокирован, иначе – заблокирован |
Длина записи | Количество байтов в записи |
Позиция ключа | Смещение ключа внутри каждой записи |
Длина ключа | Количество байтов в поле ключа |
Время создания | Дата и время создания файла |
Время последнего доступа | Дата и время последнего доступа к файлу |
Время внесения последних изменений | Дата и время внесения последних изменений |
Текущий размер | Количество байтов в памяти |
Максимальный размер (устарел) | Предельное количество байтов, до которого файл может увеличиваться |
Примечание: Атрибуты, имеющие отношение к ключу используются для поиска данных |
Как известно, информация, которой пользуется человек, должна быть структурирована. С этой целью на дисках и других устройствах долговременного хранения информации организуются каталоги – специальные системные файлы, содержащие списки ссылок на файлы.
6.2. Понятие и функции файловой системы
и системы управления файлами.
Файловая система – это понятие, имеющее два смысла в зависимости от контекста использования:
· принципы доступа к данным, организованным в файлы;
· организация (способ размещения) файлов на том или ином носителе.
Система управления файлами – это комплекс программных модулей, обеспечивающих работу с файлами в конкретной операционной системе по принятым спецификациям (описаниям объектов) файловой системы.
Файловая система позволяет перевести на логический уровень общение пользователя с файлами. Появляются логические диски, обозначенные латинскими буквами, например "а:", "с:" и т.д. К файлам обращаются по именам, а не по их физическим адресам на дисках. Файловая система определяет и способ организации данных и программ на дисках и иных носителях. Наиболее известны файловые системы FAT (ныне FAT-12), FAT-16, FAT-32, NTFS, CDFS и др.
Система управления файлами предоставляет пользователю интерфейс для работы с файлами и обеспечивает выполнение следующих функций:
· создание, удаление, переименование и другие операции с файлами как и программ пользователя, так и командами операционной системы или специальных программных средств для работы с файлами;
· работа с недисковыми периферийными устройствами как с файлами;
· обмен данными между устройствами, устройствами и файлами и меду файлами;
· работа с файлами посредством обращения к программным модулям системы управления файлами;
· защита файлов от несанкционированного доступа.
Система управления файлами обращается к программным модулям операционной системы, используя функции пользовательского интерфейса API. Эта система разрабатывается для каждой конкретной операционной системы, и будет работать только в ней, несмотря на то, что другая операционная система будет использовать ту же файловую систему. Это объясняется тем, что программные модули системы управления файлами и операционной системы в целом различны. Но, в принципе, файлы созданные в одной операционной системе могут быть доступны в другой операционной системе, поддерживающей ту же файловую систему.
Операционная система может поддерживать несколько систем управления файлами и работать с ними одновременно или одной из нескольких. Дополнительные системы управления файлов можно доустанавливать в операционную систему. Такие системы управления файлами называются монтируемыми. При монтировании одна файловая система выбирается корневой и в её каталоге создаётся подкаталог, который является корневым для монтируемой системы.
Различают три структуры файловых систем: одноуровневые, иерархические, сетевые (рис. 6.1). Прямоугольниками на рис. 6.1 показаны каталоги, окружностями – файлы. Во всех структурах на каждом носителе предусматривается корневой каталог. Одноуровневая система каталогов предусматривает существование только корневого каталога, а все файлы числятся в этом каталоге.
В иерархической и сетевой структурах предусматривается вхождение в любой каталог множества каталогов. Каталог, содержащий вложенные каталоги называется родительским или надкаталогом. Вложенные каталоги называются подкаталогами.
![]() | ![]() | ![]() |
Рис. 6.1. Структуры файловых систем: одноуровневая (а), иерархическая (б), сетевая (в) |
В иерархической структуре файл может входить (числиться) только в одном каталоге и иметь только одно полное имя файла. Иерархическая структура файловой системы имеет и другое название – древовидная. В сетевой структуре файл может входить в два и более каталогов и иметь несколько полных символьных имён, но только одно уникальное цифровое имя.
6.3. Обзор файловых систем
6.3.1. Файловая система FAT16, FAT32 и VFAT
Файловые системы FAT16, VFAT и FAT32 получила своё название по основному элементу этих файловых систем – таблице размещения файлов (File Allocation Table). Все три файловых системы предполагают разбивку диска на секторы и объединение нескольких секторов, идущих друг за другом, в кластеры. FAT16 является 16-разрядной файловой системой, позволяющей обращаться к 216 кластерам.
Файловая система FAT16 использовала формат имени файла 8.3: 8 символов отводилось для имения и 3 символа для расширения имени файла. Это достаточно жёсткое ограничение усугублялось ограниченным набором символов, допускавшихся для образования имени файла и его расширения.
Поэтому в операционных системах Windows 95 и NT, а затем и в исходных версиях Windows 2000 и XP появились файловые системы VFAT (виртуальная FAT) и FAT32. Файловая система VFAT поддерживает длинные имена файлов и совместима со стандартной системой FAT16. Совместимость обеспечивается наличием специальных утилит. Недостатком VFAT являются большие потери на кластеризацию и ограничения на размер логического диска. FAT32 является самостоятельной 32-разрядной файловой системой, наиболее совершенной из описываемых трёх систем.
Во всех трёх файловых системах пространство логического диска делится на системную область и на область данных. Обязательным элементом всех трёх систем является загрузочная запись, расположенная в начале диска
(табл. 6.2). Она состоит из блока параметров диска (BDP) и системного загрузчика (SB). Во всех трёх файловых системах присутствуют каталоги и файлы, которые описываются как файловый объект. Структуры файловых объектов в системах FAT16, VFAT и FAT32 показаны на рис. 6.2.
Таблица 6.2. Структура загрузочной записи | FAT32 | Содержимое | Безусловный переход на системный загрузчик | Системный идентификатор | Размер сектора, байт | Число секторов в кластере | Число зарезервированных секторов | Число копий FAT-таблицы | 0000h | 0000h | Дескриптор носителя | 0000h | Число секторов на дорожке | Число рабочих поверхностей |
Обозначение поля | Jmp 3Eh | SectSize | ClstSize | ResSecs | FATcnt | RootSize | TotSecs | Media | FATSize | TrcSecs | HeadCnt | |||
Длина поля, байт | ||||||||||||||
FAT16 | Содержимое | Безусловный переход на системный загрузчик | Системный идентификатор | Размер сектора, байт | Число секторов в кластере | Число зарезервированных секторов | Число копий FAT-таблицы | Максимальное число элементов корневого каталога | Число секторов на логическом диске объёмом до 32 Мбайт, иначе 0000h | Дескриптор носителя | Размер FAT в секторах | Число секторов на дорожке | Число рабочих поверхностей | |
Обозначение поля | Jmp 3Eh | CectSize | ClastSize | ResCecs | FATcnt | RootSize | TotSecs | Media | FATsize | TrcSecs | HeadCnt | |||
Длина поля, байт | ||||||||||||||
Смещение, байт | 00h | 03h | 0Bh | 0Dh | 0Eh | 10h | 11h | 13h | 15h | 16h | 18h | 1Ah |
Таблица 6.2. (продолжение) | FAT32 | Содержимое | Число скрытых секторов | Число секторов на логическом диске | Число секторов в таблице FAT | – | – | – | Расширенные флаги | Версия файловой системы | – | Номер первого кластера корневого каталога | Номер сектора с резервной копией загрузочного сектора | Зарезервировано | Системный загрузчик | – | * Том –логическое дисковое пространство, состоящее из одного или нескольких разделов, которое может быть воспринято файловой системой как один логический диск |
Обозначение поля | HidnSecs | – | |||||||||||||||
Длина поля, байт | – | – | – | – | – | ||||||||||||
FAT16 | Содержимое | Число скрытых секторов | Число сектров на логическом диске до 32 Мбайт | Тип диска (00h – FDD, 80h – HDD) | Зарезервирован | Маркер с кодом 29h | Серийный номер тома | – | – | Метка тома* | – | – | Имя файловой системы | Системный загрузчик | Сигнатура (слово AA44h) | ||
Обозначение поля | HidnSecs | ||||||||||||||||
Длина поля, байт | – | – | – | ||||||||||||||
Смещение, байт | 1Ch | 20h | 24h | 25h | 26h | 27h | 28h | 2Ah | 2Bh | 2Ch | 34h | 36h | 3Eh | 1Feh |
Структура каталога для короткого имени FAT16 | Размер файла в байтах | Структура каталога для короткого имени FAT132 | Размер файла в байтах | Структура каталога для длинного имени VFAT и FAT32 | 6 – 11 символы имения файла в кодировке Unicode | Рис. 6.2. Структура файлового объекта | ||||
Номер начального кластера | Младшее слово номера начального кластера | 0000h | ||||||||
Дата последней записи | Дата последней записи | 6 – 11 символы имения файла в кодировке Unicode | ||||||||
Время последней записи | Время последней записи | |||||||||
Зарезервировано | Старшее слово номера начального кластера | |||||||||
Дата последнего доступа | ||||||||||
Дата создания файла | ||||||||||
Время создания файла | ||||||||||
Контрольная сумма | ||||||||||
Зарезервировано | Зарезервировано | |||||||||
Атрибуты | Атрибуты | Атрибуты | ||||||||
Имя файла в формате 8.3 (имя – 8 символов, расширение – 3 символа) | Имя файла в формате 8.3 (имя – 8 символов, расширение – 3 символа) | 1 – 5 символы имени файла в кодировке Unicode | ||||||||
На рис. 6.3 показана структура логического диска в системе FAT16. В этой файловой системе системная область создаётся при форматировании диска и включает в себя:
загрузочную запись BR (Boot Record), структура которой приведена в табл. 6.2;
зарезервированных секторов Rsec (Reserved Sectors);
двух копий (основной и резервной) таблицы размещения файлов FAT1 и FAT2;
корневого каталога диск Rdir (Root Directory).
Рис. 6.3. Структура логического диска в FAT16
Таблицы размещения файлов содержат в себе:
перечень непосредственно адресуемых участков логического диска, отведённых для размещения на них файлов или их фрагментов;
перечень адресов свободных областей дискового пространства;
перечень адресов дефектных областей диска.
Область данных содержит обычные файлы и файлы-каталоги. В отличие от системной области область данных доступна через элементы пользовательского интерфейса операционной системы. Она разбита на кластеры, включающие в себя от 4 до 64 секторов и имеющие размеры в пределах 2 – 4 Кб. Размеры кластеров зависят от ёмкости раздела физического диска, отведённого под логический диск. Разбивка области на кластеры выполняется в следующих целях:
уменьшение таблицы FAT;
уменьшение возможной фрагментации файлов;
ускорение доступа к файлу.
Однако выделение для файла целых кластеров приводит к потерям дискового пространства в среднем по половине кластера на файл.
Описание файловых объектов приведено на рис. 6.2. Размещение файлов на диске показано на рис. 6.4.
Рис. 6.4. Описание файла и кластеры области данных, отведённых под файл
Кластеры с номерами 00 – 1В показаны прямоугольниками. Номера кластеров стоят над их обозначениями. Символы "00" указывают, что кластеры свободны. Символы "F7" внутри обозначения 18-о кластера указывает, что этот кластер дефектный.
Номер начального кластера файла указан в описании. Файл расположен в двух цепочках кластеров 08, 09, 0А, 0В и 15, 16, 17, 18, 19, 1А, 1В. Числа внутри обозначений этих кластеров размещаются после данных, записанных в кластер, и указывают номера последующих кластеров в цепочке. В конце последнего кластера в цепочке стоит код FF – указывающий на завершение файла.
Дата публикования: 2014-11-18; Прочитано: 390 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!