Слайд 1Подсистема ввода-вывода.
Файловые системы
1. Принципы функционирования аппаратуры ввода-вывода
2. Обработчики прерываний
и драйверы устройств
3. Понятие файла и каталога
4. Задачи ОС по
управлению файлами
5. Структура файловой системы и виды файловых систем
6. Управление дисковыми ресурсами
Слайд 2Принципы функционирования аппаратуры ввода-вывода
Физическая организация устройств
Устройства ввода-вывода делятся на два
типа:
блок-ориентированные устройства
байт-ориентированные устройства
Блок-ориентированные устройства хранят информацию в блоках фиксированного
размера, каждый из которых имеет свой собственный адрес (диск).
Байт-ориентированные устройства не адресуемы и не позволяют производить операцию поиска, они генерируют или потребляют последовательность байтов (принтер).
Слайд 3Внешнее устройство обычно состоит из электронного механического и компонентов.
Электронный компонент
называется контроллером устройства или адаптером.
Механический компонент представляет собственно устройство.
Операционная система взаимодействует не с устройством, а с контроллером.
Каждый контроллер имеет несколько регистров. ОС выполняет ввод-вывод, записывая команды в регистры контроллера.
Слайд 5Организация программного обеспечения ввода-вывода
Идея организации программного обеспечения ввода-вывода состоит в
разбиении его на несколько уровней.
Нижние уровни обеспечивают экранирование особенностей аппаратуры
от верхних.
Основная задача независимого от устройств программного обеспечения заключается в выполнении функций ввода/вывода, общих для всех устройств, и предоставлении единообразного интерфейса для программ уровня пользователя.
Слайд 6В составе программного обеспечения ввода-вывода выделяют четыре слоя:
Обработка прерываний
Драйверы
устройств
Независимый от устройств слой операционной системы
Пользовательский слой программного обеспечения
Слайд 7Многоуровневая организация подсистемы ввода-вывода
Слайд 82. Обработчики прерываний и драйверы устройств
Наилучший способ состоит в разрешении
процессу, инициировавшему операцию ввода-вывода, блокировать себя до завершения операции и
наступления прерывания.
Эффект от прерывания будет состоять в том, что ранее заблокированный процесс теперь продолжит свое выполнение.
Слайд 9Драйвер - программа, с помощью которой другие программы (в т.ч.
ОС) получают доступ к аппаратному обеспечению некоторого устройства.
Операционная система
управляет некоторым «виртуальным устройством», которое понимает стандартный набор команд.
Драйвер переводит эти команды в команды, которые понимает непосредственно устройство. Т.е. весь зависимый от устройства код помещается в драйвер устройства.
Каждый драйвер управляет устройствами одного типа или, может быть, одного класса.
Слайд 10Независимый от устройств слой операционной системы
Основная задача независимого от устройств
программного обеспечения заключается в выполнении функций ввода/вывода, общих для всех
устройств, и предоставлении единообразного интерфейса для программ уровня пользователя.
Большая часть программного обеспечения ввода-вывода является независимой от устройств.
Точная граница между драйверами и независимыми от устройств программами определяется ОС.
Слайд 11Типичными функциями для независимого от устройств слоя являются:
обеспечение общего
интерфейса к драйверам устройств,
именование устройств,
защита устройств,
обеспечение независимого
размера блока,
буферизация,
распределение памяти на блок-ориентированных устройствах,
распределение и освобождение выделенных устройств,
уведомление об ошибках.
Слайд 123. Понятие файла и каталога
Файл – логически связанная совокупность данных
или программа, записанная в виде поименованной области на устройстве хранения.
Файловая
система (ФС) является составной частью любой операционной системы и отвечает за организацию хранения и доступа к информации на каких-либо носителях.
Слайд 13В широком смысле понятие "файловая система" включает:
совокупность всех файлов на
диске,
наборы служебных структур данных, используемых для управления файлами (каталоги,
таблицы распределения свободного и занятого пространства на диске, атрибуты файлов и т.д.)
набор функций по управлению файлами (создание, удаление, чтение, запись, установка атрибутов и уровней доступа и т.д.)
Слайд 14Базовые функции файловой системы:
обеспечение оперативной работы с файлами: создание, модификация,
удаление;
обеспечение пользователям возможности контролируемого доступа к некоторому подмножеству файлов в
системе;
обеспечение пользователям возможности устанавливать тип доступа к их файлам;
обеспечение возможности пользователям изменять структуру своих файлов в соответствии с текущей задачей;
обеспечение возможности пересылки данных между файлами;
обеспечение возможности резервного копирования, архивации, компрессии файлов;
обеспечение возможности копирования и восстановления файлов в случае их повреждения;
обеспечение доступа к файлам по символическим именам.
Слайд 15Каталог (directory — справочник, указатель) — объект в файловой системе (файл особого
вида), группирующий файлы и подкаталоги и упрощающий организацию хранения файлов
на диске.
Корневой каталог находится на самом верхнем уровне иерархии всех каталогов и не является подкаталогом ни одного другого каталога.
Термин папка (folder) был введён для представления объектов файловой системы (каталогов) в графическом пользовательском интерфейсе.
Слайд 174. Задачи ОС по управлению файлами
создание, удаление, переименование и другие
операции с файлами;
работа с не дисковыми периферийными устройствами как с
файлами;
обмен данными между файлами, между устройствами, между файлом и устройством (и наоборот);
работа с файлами с помощью обращений к программным модулям системы управления файлами;
защита файлов от несанкционированного доступа.
Слайд 185. Структура файловой системы и виды файловых систем
Файловая система имеет
два уровня организации:
логический
физический.
На логическом уровне
описывается относительное местоположение файлов в компьютере.
Файловая система имеет иерархическую структуру хранения файлов, в которой уровни создаются за счет каталогов.
Физический уровень отвечает за управление дисковым пространством и размещение файлов в физических адресах диска.
Слайд 19C:\home\apalko\file1
Путем к файлу называется цепочка символов, начиная с имени дисковода,
корневого каталога и последующих подкаталогов вплоть до каталога, содержащего необходимый
файл.
Логический уровень
Слайд 20Характеристики некоторых файловых систем
Слайд 216. Управление дисковыми ресурсами
Все пространство магнитного диска разбито на дорожки,
которые в свою очередь разделены на сектора.
Для создания дорожек и
секторов, а так же служебных данных файловой системы используется специальная процедура – форматирование, которая выполняется, обычно, с помощью программы FORMAT.
Слайд 22Процесс форматирования является сложной процедурой, состоящей из двух раздельных операций,
называемых форматированием низкого и высокого уровней.
Низкий уровень форматирования (физический)
состоит в нанесении на диск электронных меток для указания физических мест дорожек и секторов.
Затем на высоком уровне форматирования, называемом также логическим, происходит выделение служебных областей на диске в соответствии с видом файловой системы.
Слайд 23Структура диска:
(A) дорожка
(B) межсекторный промежуток
(C) сектор дорожки
(D) кластер
Слайд 24Размер сектора (точнее – емкость поля данных) устанавливается контроллером или
драйвером.
Кластер (cluster) — в некоторых видах файловых систем логическая единица
хранения данных, объединяющая группу секторов.
С точки зрения операционной системы, весь диск представляет собой набор кластеров (размером 512 байт или кратного 512).
Слайд 25Жесткий диск может быть разбит на несколько разделов (partition), которые
затем могут использоваться либо одной, либо различными ОС.
В каждом разделе
может быть организована своя файловая система. Поддержка той или иной файловой системы осуществляется драйверами.
Разделы диска могут быть primary (первичный) и extended (расширенный, дополнительный).
Максимальное количество разделов на диске – 4 или все первичные или 3 первичных и только 1 расширенный, содержащий до 4 логических разделов.
Слайд 26На диске обязательно должен быть по крайней мере один primary-раздел.
Если primary-разделов несколько, то только один из них может быть
активным (он используется для загрузки ОС).
Дополнительный раздел может быть только один, но его структура позволяет создавать внутри него большое число логических дисков.
Слайд 27В первом физическом секторе жесткого диска располагается головная загрузочная запись
(MBR) и таблица разделов диска (partition table).
Каждая запись в таблице
разделов содержит начальную позицию и размер раздела на жестком диске, а также информацию о том, первый сектор какого раздела содержит загрузочную запись.
BIOS считывает и загружает в память MBR и далее первый физический сектор активного раздела, называемый загрузочным сектором (Boot Sector).
Слайд 28Служебные области диска в файловой системе FAT16
Слайд 291
2
4
3
5
6
8
7
10
9
11
13
12
14
15
17
16
19
18
21
20
22
24
23
28
27
26
29
25
30
31
32
33
34
цепочка кластеров, принадлежащих данному файлу – 5,10,14,19,27
Алгоритм считывания файлов в
FAT
10
14
19
27
EOF
Слайд 30Каждому файлу и подкаталогу в FAT выделяется 32-байтный элемент каталога
Слайд 33MFT поделена на записи фиксированного размера (обычно 1 Кбайт)
Каждая
запись соответствует одному файлу.
Первые 16 файлов носят служебный характер и
недоступны операционной системе - они называются метафайлами, причем самый первый метафайл - сам MFT.
Эти первые 16 элементов MFT - единственная часть диска, имеющая фиксированное положение.