Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SPO_na_ekz_1.docx
Скачиваний:
2
Добавлен:
01.04.2025
Размер:
424.82 Кб
Скачать

33. Разделяемые и невыгружаемые области памяти.

Подсистема виртуальной памяти представляет собой очень удобный механизм организации совместного

доступа нескольких процессов к одной и той же области памяти, который называется разделяемой памятью

• Для организации разделяемой области достаточно поместить ее в ВАП каждого процесса, которому нужен доступ к данному сегменту, а затем настроить параметры отображения этих виртуальных областей так, чтобы они соответствовали одной и той же области ОП.

Возможно более экономичное для ОС решение этой задачи – помещение единственной разделяемой области в

системную часть ВАП

• В этом случае настройка адресов выполняется только один раз, а все процессы пользуются такой настройкой

и совместно используют часть ОП

• При работе с разделяемыми областями памяти ОС должна выполнять некоторые функции, общие для любых

разделяемых ресурсов.

Для того чтобы отличать разделяемые области от индивидуальных, записи таблиц областей помимо прочего содержат поле, принимающее 2 значения: «разделяемая» и «индивидуальная»

• ОС может создавать разделяемые области и по явному запросу, и по умолчанию

• В первом случае процесс должен выполнить соответствующий системный вызов, во втором – ОС сама принимает решение о том, что нужно создать разделяемую область.

Иногда необходимо запретить выгрузку сегментов, страниц или областей на диск

• Это нужно, скажем, когда для ускорения работы устройств ввода-вывода в ОП создаются специальные буферы

• Существует небольшая вероятность, что в результате страничного прерывания они могут быть выгружены

• Чтобы исключить такую возможность, должны предоставляться возможности для блокировки страниц в ОП, которую еще называют привязкой.

Часть 5. Управление данными

34. Основные функции подсистемы управления вводом-выводом.

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

Одна из главных задач ОС –обеспечение обмена данными между приложениями и периферийными

устройствами (ПУ)

• Функции обмена данными с ПУ выполняет подсистема ввода-вывода (ПВВ)

• Клиенты ПВВ – пользователи, приложения, некоторые компоненты ОС, которым требуется получение системных данных и их вывод

• Основные компоненты ПВВ – это драйверы, управляющие внешними устройствами, файловая система (ФС), и

диспетчер прерываний

Можно выделить две основные функции подсистемы ввода-вывода:

- изоляция всех других компонентов операционной системы и прикладных программ от особенностей аппаратной реализации внешних устройств компьютера;

- организация бесконфликтного и эффективного использования внешних устройств всеми исполняющимися программами.

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

Построение и работа подсистемы ввода-вывода, включая драйверы, в дальнейшем будет рассмотрено более подробно.

Как показывают многочисленные замеры и эксперименты, программы, кроме чисто вычислительных, большую часть своей жизни проводят в состоянии ожидания завершения операций ввода-вывода. Поэтому от эффективности работы подсистемы ввода-вывода существенно зависит эффективность работы всех остальных программ. Для повышения скорости выполнения запросов ввода-вывода, подсистема ввода-вывода широко использует такие приемы, как переупорядочивание запросов ввода-вывода или кэширование данных. В совокупности, подобные меры могут поднять производительность подсистемы ввода-вывода более, чем в 100 раз. В дальнейшем, при детальном изучении подсистемы ввода-вывода, основные приемы повышения производительности будут рассмотрены довольно подробно.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]