Студопедия — Файловая система операционной системы MS-DOS
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Файловая система операционной системы MS-DOS






 

Файловая система MS-DOS представляет собой увеличенную и улучшенную версию файловой системы СР/М, которая работает только на платформах с центральным процессором Intel, не поддерживает многозадачности и работает только в реальном режиме IBM PC. Файловая система MS-DOS во многом напоминает файловую систему СР/М, включая использование имен файлов, состоящих из 8 + 3 символов верхнего регистра. В первой версии системы (MS-DOS 1.0) был всего один каталог, как и в СР/М. Однако, начиная с версии операционной системы MS-DOS 2.0, функциональность файловой системы значительно расширилась. Самым серьезным улучшением явился переход на иерархическую файловую систему, в которой каталоги могли вкладываться друг в друга на произвольную глубину. Это означало, что корневой каталог (размер которого по-прежнему был ограничен) мог содержать подкаталоги, которые так же могли содержать свои подкаталоги. Связи, принятые в UNIX, не допускались, поэтому файловая система представляла дерево, начинавшееся в корневом каталоге.

Прикладные программы часто начинают с того, что задают в корневом каталоге подкаталог, в который записывают свои файлы, что позволяет программам избежать конфликта. Так как сами каталоги хранятся в MS-DOS как файлы, нет ограничения на число каталогов или файлов на диске. Однако в отличие от СР/М, в MS-DOS нет концепции различных пользователей. Соответственно, любой вошедший в систему пользователь получает доступ ко всем файлам.

Чтобы прочитать файл, программа, работающая в системе MS-DOS, должна вначале сделать системный вызов open, чтобы получить дескриптор файла[5]. Системному вызову open в качестве одного из входных аргументов следует указать путь к файлу, который может быть как абсолютным, так и относительным (относительно текущего каталога). Файловая система открывает каталоги, перечисленные в пути, один за другим, пока не обнаруживает последний каталог, который считывается в оперативную память. Затем в считанном каталоге ищется описатель файла, который требуется открыть.

Хотя каталоги в файловой системе MS-DOS переменного размера, используемые каталоговые записи, как и в СР/М, имеют фиксированный размер 32 байт (рис. 4.1). Описатель файла содержит: имя файла, его атрибуты, дату и время создания, номер начального блока и точный размер файла. Имена файлов короче 8 + 3 символов выравниваются по левому краю полей и дополняются пробелами, каждое поле отдельно. Поле Attributes (атрибуты) представляет собой новое поле, содержащее биты, которые указывают тип файла (заархивирован, системный или скрытый) и действия, которые ему разрешены (чтение или чтение и запись). Запись в файл, для которого разрешено только чтение, не разрешается. Таким образом, осуществляется защита файлов от случайной записи или удаления.

Бит archived (архивный файл) не устанавливается и не проверяется операционной системой. Он зарезервирован в описателе для архивирующих программ уровня пользователя, сбрасывающих этот бит при создании резервной копии файла, в то время как программы, модифицирующие файл, устанавливают этот бит. Таким образом архивирующая программа определяет какие файлы подлежат архивации. Бит hidden (скрытый файл) позволяет не отображать файл в перечне файлов каталога, что позволяет скрыть от неопытных пользователей файлы, назначение которых им неизвестно. Бит system (системный) также скрывает файлы и защищает их от случайного удаления командой del, он установлен у основных компонентов системы MS-DOS.


Каталоговая запись также содержит дату и время создания или последнего изменения файла. Время хранится с точностью ±2 секунды, так как для него отведено 2-байтовое поле, способное содержать всего 65536 уникальных значений, а в сутках 86400 секунд. Поле времени разбивается на подполя: секунды (5 бит), минуты (6 бит) и часы (5 бит). Шестнадцатиразрядное поле даты также разбивается на три подполя: день (5 бит), месяц (4 бит) и год – 1980 (7 бит). При 7 двоичных разрядах для хранения года и 1980 в качестве точки отсчета, максимальное значение года, которое можно получить – 2107-й, поэтому файловая система MS-DOS имеет встроенную проблему 2108 года.

 

В отличие от файловой системы СР/М, не хранящей точного размера файла, система MS-DOS хранит точный размер файла и номера блоков файла в специальной таблице размещения файлов (FAT), которая помещается в оперативную память (в СР/М дисковые адреса файлов хранятся в их описателях). В каталоговой записи файловой системы MS-DOS хранится номер первого блока файла, который используется в качестве индекса для 64 К[6] элементов FAT -таблицы. Все блоки файла могут быть найдены, если проследовать по цепочке элементов таблицы (рис. 3.2).

 

     
     
     
     
    Начало файла А
     
    Начало файла В
     
     
     
     
     
  -1  
     
  -1  
    Неиспользуемый блок

 

Физический блок

 

 

Рис. 3.2. Таблица размещения файлов

 

В зависимости от количества блоков на диске в системе MS-DOS применяется три версии файловой системы FAT: FAT-12, FAT-16 и FAT-32. Во всех файловых системах FAT размер блока диска в байтах может быть установлен равным некоторому числу, кратному 512 с наборами разрешенных размеров блоков (кластеров), различными для каждого варианта FAT. В первой версии системы MS-DOS использовалась FAT-12 с 512- байтовыми блоками, что позволяло создавать дисковые разделы размером до 212 х 512 байт. При этом максимальный размер дискового раздела мог составлять 2 Мбайт, а в оперативной памяти FAT -таблица занимала 4096 элементов по два байта каждый. Такая система хорошо работала на гибких дисках. Для работы на жестких дисках корпорация Microsoft решила использовать дисковые блоки (кластеры) размером 1,2 и 4 Кбайт, что позволило сохранить структуру и размер таблицы FAT-12 и увеличить размер дискового раздела до 16 Мбайт.

Так как MS-DOS поддерживала до четырех дисковых разделов, файловая система FAT-12 могла работать с дисками емкостью до 64 Мбайт. Для поддержки жестких дисков большего размера была разработана файловая система FAT-16 с 16-разрядными дисковыми указателями. Дополнительно было разрешено использовать кластеры размеров 8, 16 и 32 Кбайт. Таблица FAT-16 занимала 128 Кбайт оперативной памяти, максимальный размер дискового раздела, поддерживаемый файловой системой, составлял 2 Гбайт (64 К элементов по 32 Кбайт каждый), максимальный размер диска составлял 8 Гбайт (4 раздела по 2 Гбайт каждый).

Для второй версии операционной системы Windows 95 была разработана файловая система FAT-32 с 28-разрядными адресами. При этом версия системы MS-DOS, лежащая в основе Windows 95, была адаптирована для поддержки FAT-32. Размер разделов увеличился до 2 Тбайт (2048 Гбайт) и 8-гигобайтный диск мог состоять всего из одного раздела. При использовании FAT-16 он должен был содержать четыре раздела, что представлялось пользователям как логические устройства: С:, D:, Е: и F:. Кроме того, для дискового раздела заданного размера могли использоваться блоки меньшего размера, например, 4 Кбайт. Для FAT -16 использовались 32-килобайтные блоки. При размере блока в 32 Кбайт даже маленький (10-байтовый) файл занимал на диске 32 Кбайт. Так как многие файлы имеют размер меньше 32 Кбайт, то при использовании 32-килобайтных блоков около 3/4 дискового пространства терялось, то есть эффективность использования диска была низкой. При 8-килобайтных файлах и 4-килобайтных блоках потерь дискового пространства нет, но значительно увеличился размер оперативной памяти, занимаемой таблицей FAT.







Дата добавления: 2015-10-12; просмотров: 413. Нарушение авторских прав; Мы поможем в написании вашей работы!



Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...

Логические цифровые микросхемы Более сложные элементы цифровой схемотехники (триггеры, мультиплексоры, декодеры и т.д.) не имеют...

Принципы резекции желудка по типу Бильрот 1, Бильрот 2; операция Гофмейстера-Финстерера. Гастрэктомия Резекция желудка – удаление части желудка: а) дистальная – удаляют 2/3 желудка б) проксимальная – удаляют 95% желудка. Показания...

Ваготомия. Дренирующие операции Ваготомия – денервация зон желудка, секретирующих соляную кислоту, путем пересечения блуждающих нервов или их ветвей...

Билиодигестивные анастомозы Показания для наложения билиодигестивных анастомозов: 1. нарушения проходимости терминального отдела холедоха при доброкачественной патологии (стенозы и стриктуры холедоха) 2. опухоли большого дуоденального сосочка...

Понятие и структура педагогической техники Педагогическая техника представляет собой важнейший инструмент педагогической технологии, поскольку обеспечивает учителю и воспитателю возможность добиться гармонии между содержанием профессиональной деятельности и ее внешним проявлением...

Репродуктивное здоровье, как составляющая часть здоровья человека и общества   Репродуктивное здоровье – это состояние полного физического, умственного и социального благополучия при отсутствии заболеваний репродуктивной системы на всех этапах жизни человека...

Случайной величины Плотностью распределения вероятностей непрерывной случайной величины Х называют функцию f(x) – первую производную от функции распределения F(x): Понятие плотность распределения вероятностей случайной величины Х для дискретной величины неприменима...

Studopedia.info - Студопедия - 2014-2024 год . (0.012 сек.) русская версия | украинская версия