- •Системное программное обеспечение
- •Основные понятия теории операционных систем
- •Прерывания
- •Классификация операционных систем
- •Архитектура аппаратных и программных средств персонального компьютера
- •Регистры микропроцессоров Intel 8086/88
- •Формирование физического адреса
- •Прерывания
- •Особенности архитектуры микропроцессоров i80x86
- •Реальный и защищенный режимы работы процессора
- •Новые системные регистры микропроцессоров i80х86
- •Адресация в 32-разрядных микропроцессорах i80х86 при работе в защищенном режиме
- •Система прерываний 32-разрядных микропроцессоров i80х86
- •Управление задачами в операционных системах
- •Планирование процессов и диспетчеризация задач
- •Стратегии планирования (диспетчеризации)
- •Дисциплины диспетчеризации
- •Диспетчеризация задач с использованием динамических приоритетов
- •Управление памятью в операционных системах
- •Память и отображение, виртуальное адресное пространство
- •Простое непрерывное распределение и распределение с перекрытием
- •Распределение статическими и динамическими разделами
- •Разрывные методы распределения памяти
- •Распределение оперативной памяти в современных ос для пк
- •Управление вводом/выводом в операционных системах
- •Основные системные таблицы ввода-вывода
- •Файловая система
- •Структура магнитного диска
- •Файловая система fat
- •Файловая система ntfs
- •Структура тома с файловой системой ntfs
- •Основные отличия fat от ntfs
- •Управление параллельными взаимодействующими вычислительными процессами
- •Использование блокировки памяти при синхронизации параллельных процессов.
- •Синхронизация процессов посредством операции «проверка и установка»
- •Семафорные примитивы Дейкстры
- •Мониторы Хоара
- •Почтовые ящики
- •Конвейеры (программные каналы)
- •Очереди сообщений
- •Проблема тупиков и методы борьбы с ними
- •Предотвращение тупиков
- •Обход тупиков
- •Распознавание тупика
- •Современные операционные системы
- •Семейство операционных систем unix
- •Основные понятия системы unix
- •Функционирование системы unix
- •Файловая система
- •Межпроцессорные коммуникации
Файловая система
Файловая система – это набор спецификаций и соответствующее им программное обеспечение, которые отвечают за создание, уничтожение, организацию, чтение, запись, модификацию и перемещение файловой информации, а также за управление доступом к файлам и за управление ресурсами, которые используются файлами.
Все современные ОС имеют соответствующие системы управления файлами. Система управления файлами является основной (самой видимой) подсистемой в современных ОС, с ее помощью:
-
Связываются по данным все системные обрабатывающие программы;
-
Решаются проблемы централизованного распределения дискового пространства и управления данными:
-
Пользователям предоставляются следующие возможности:
-
создание, удаление, переименование и т.д. именованных наборов данных из своих программ или посредством специальных управляющих программ;
-
работа с не дисковыми периферийными устройствами как с файлами;
-
обмен данными между файлами, между устройствами, между файлом и устройством (и наоборот);
-
работа с файлами с помощью обращений к программным модулям системы управления файлами;
-
защита файлов от несанкционированного доступа.
-
В некоторых ОС может быть несколько систем управления файлами, что обеспечивает им возможность работать с несколькими файловыми системами.
-
Структура магнитного диска
Чтобы загрузить с диска саму ОС, а затем с ее помощью организовать работу систему управления файлами, были приняты специальные системные соглашения о структуре диска.
Информация на дисках размещается и передается блоками. Каждый такой блок называется сектором, сектора расположены на концентрических дорожках поверхности диска. Каждая дорожка (track) образуется при вращении диска под зафиксированной в определенном положении головкой чтения/записи. Накопитель на жестких дисках (винчестер – 1973 г.) содержит несколько дисков (часто два или три).
Группы дорожек (треков) одного радиуса, расположенных на поверхностях дисков, образуют цилиндры. Современные диски имеют по несколько десятков тысяч таких цилиндров. 3.5” дискета имеет 80 цилиндров (две рабочие поверхности, 18 секторов на каждой дорожке, каждый сектор 512 байт – 2х80х18х512 = 1 474 560 байт = 1.44 Мбайт).
Каждый сектор состоит из поля данных и поля служебной информации. Размер сектора устанавливается контроллером или драйвером. В большинстве
современных ОС сектор имеет размер 512 байт. Физически адрес сектора на диске определяется триадой [c-h-s], где c – номер цилиндра (дорожки на поверхности диска, cylinder), h – номер рабочей поверхности диска (магнитной головки, head), а s – номер сектора на дорожке (sector).
Обмен информацией между оперативной памятью и дисками физически осуществляется только секторами.
Жесткий диск может быть разбит на несколько разделов (partition). На каждом разделе может быть организована своя файловая система. Разделы диска могут быть двух типов – primary (первичный) и extended (расширенный). На диске должен быть, по крайней мере, один primary-раздел (максимум – 4). Загрузчик располагается в активном разделе и ему передается управление при включении компьютера и загрузке ОС.
На жестком диске может быть только один extended-раздел, который может быть разделен на большое количество подразделов – логических дисков. Каждый логический диск управляется своим логическим приводом. Каждому логическому диску на винчестере соответствует своя относительная нумерация. Физическая же адресация жесткого диска сквозная.
По физическому адресу [0-0-1] на винчестере располагается главная загрузочная запись (master boot record – MBR), содержащая внесистемный загрузчик (non-system bootstrap – NSB), а также таблицу разделов (partition table – PT). Эта запись занимает один сектор и размещается в оперативной памяти, начиная с адреса 0:7С00h. Затем управление передается коду, содержащемуся в этом самом первом секторе диска. MBR является основным средством загрузки с жесткого диска.
PT описывает размещение и характеристики имеющихся на винчестере разделов. Это одна из наиболее важных структур на жестком диске. Если эта таблица будет повреждена, то не только не будет загружаться ОС, но перестанут быть доступными и данные, расположенные на винчестере, особенно, если он разбит на несколько разделов.
Вслед за сектором MBR размещаются собственно сами разделы. В процессе начальной загрузки сектора MBR, содержащего PT, работают программные модули BIOS. Начальная загрузка считается выполненной корректно, когда таблица разделов содержит допустимую информацию.
Одной из самых известных и до сих пор используемых утилит, с помощью которой можно посмотреть и отредактировать PT, а также выполнить и другие действия, связанные с изучением и исправлением данных на диске, является программа Disk editor, работающая в среде DOS. На сегодняшний день ее главный недостаток, что она ограничена размером диска 8 Гбайт. В настоящее время оной из известных и мощных программ для работы с разделами жесткого диска является программа Partition Magic (работает в среде Win32API).