Загрузка...

Файловая подсистема


Файловая подсистема обеспечивает унифицированный интерфейс доступа к данным, расположенным на дисковых накопителях, и к периферийным устройствам. Одни и те же функции open(2), read(2), write(2) могут использоваться как при чтении или записи данных на диск, так и при выводе текста на принтер или терминал. Файловая подсистема контролирует права доступа к файлу, выполняет операции размещения и удаления файла, а также выполняет запись/чтение данных файла. Поскольку большинство прикладных функций выполняется через интерфейс файловой системы, права доступа к файлам определяют привилегии пользователя в системе. Файловая подсистема обеспечивает перенаправление запросов, адресованных периферийным устройствам, соответствующим модулям подсистемы ввода/вывода. Подсистема управления процессами Запущенная на выполнение программа порождает в системе один или более процессов, в задачи подсистемы управления процессами входит: • создание и удаление процессов; • распределение системных ресурсов (памяти, вычислительных ресурсов) между процессами; • синхронизация процессов; • межпроцессное взаимодействие. Планировщик процессов(scheduler) – специальный модуль ядра, который разрешает конфликты между процессами и конкуренцию за системные ресурсы. Планировщик запускает процесс на выполнение, следя за тем, чтобы процесс монопольно не захватил разделяемые ресурсы. Процесс освобождает процессор, ожидая длительной операции ввода/вывода, или по прошествии кванта времени. В этом случае планировщик выбирает следующий процесс с наивысшим приоритетом. Модуль управления памятью обеспечивает размещение оперативной памяти для прикладных задач. В случае, если для всех процессов недостаточно оперативной памяти, ядро перемещает части процесса или несколько процессов во вторичную память, как правило, в специальную область жесткого диска, освобождая ресурсы для выполняющегося процесса. Все современные ОС реализуют виртуальную память: процесс выполняется в собственном логическом адресном пространстве, которое может значительно превышать доступную физическую память. Управление виртуальной памятью процесса также входит в задачи модуля управления памятью. Модуль межпроцесcного взаимодействия отвечает за уведомление процессов о событиях с помощью сигналов и обеспечивает возможность обмена данными между различными процессами. Подсистема ввода/вывода Подсистема ввода/вывода выполняет запросы файловой подсистемы и подсистемы управления процессами для доступа к периферийным устройствам (дискам, терминалам и т.п.). Она обеспечивает необходимую буферизацию данных и взаимодействует с драйверами устройств — специальными модулями ядра, непосредственно обслуживающими внешние устройства. Вопросы 1. Дайте определения следующих терминов: программа, процедура, процесс, процессор. 2. Почему обычно нецелесообразно устанавливать приоритетный порядок для списка заблокированных процессов? 3. Опишите четыре основные смены состояний процесса. 4. Опишите смены состояний процесса с учетом операций приостановки и возобновления. 5. Какую информацию о процессе содержит PCB? 6. Перечислите основные типы прерываний и приведите пример каждого типа прерывания. 7. Опишите суть способа переключения контекста. 8. Дайте определение ядра ОС и назовите его основные функции. 9. Определите структуру ядра Linux. 10. В чем состоит назначение файловой подсистемы? 11. В чем состоит назначение подсистемы управления процессами? 12. Каковы основные функции подсистемы ввода/вывода? 13. Определите понятие — примитивы. 14. В чем особенность иерархического подхода к проектированию ОС?

Загрузка...