Однозадачная система без подкачки на диск

Методы без использования внешней памяти

Основные понятия

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

Предотвращение условия взаимного исключения

Можно минимизировать количество процессов борющихся за ресурсы.

Например, с помощью спулинга для принтера, когда только демон принтера работает с принтером.

 

Предотвращение условия удержания и ожидания

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

 

Предотвращение условия отсутствия принудительной выгрузки ресурса

Можно выгружать ресурсы, но могут быть проблемы с принтером.

 

Предотвращение условия циклического ожидания

Способы предотвращения:

· Процесс сначала должен освободить занятый ресурс, прежде чем занять новый.

· Можно пронумеровать все ресурсы (и упорядочить), и процессы должны запрашивать ресурсы только по возрастающему порядку.

 

Управление памятью. Страничная организация.

Литература

  • Современные операционные системы, Э. Таненбаум, 2002, СПб, Питер, 1040 стр., подробнее>>
  • Сетевые операционные системы Н. А. Олифер, В. Г. Олифер (в zip архиве 1.1Мбайт)
  • Сетевые операционные системы Н. А. Олифер, В. Г. Олифер, 2001, СПб, Питер, 544 стр., подробнее>>

 

Менеджер памяти - часть операционной системы, отвечающая за управление памятью.

Основные методы распределения памяти:

· Без использования внешней памяти

· С использованием внешней памяти

Память разделяется только между программой и операционной системой.

Схемы разделения памяти:

Схемы разделения памяти

 

Третий вариант используется в MS-DOS. Та часть, которая находится в ПЗУ, часто называется BIOS.

 

6.2.2 Распределение памяти с фиксированными разделами.

Память просто разделяется на несколько разделов (возможно, не равных). Процессы могут быть разными, поэтому каждому разделу необходим разный размер памяти.

Системы могут иметь:

· общую очередь ко всем разделам

· к каждому разделу отдельную очередь

 

Распределение памяти с фиксированными разделами

 

 

Недостаток системы многих очередей очевиден, когда большой раздел может быть свободным, а к маленькому выстроилась очередь.

Алгоритмы планирования в случае одной очереди:

· поочередный

· выбирается задача, которая максимально займет раздел

Также может быть смешанная система.

 

6.2.3 Распределение памяти динамическими разделами

В такой системе сначала память свободна, потом идет динамическое распределение памяти.

 

Распределение памяти динамическими разделами.

Недостатки:

· Сложность

· Память фрагментируется

Перемещаемые разделы

Это один из методов борьбы с фрагментацией. Но на него уходит много времени.

 

Перемещаемые разделы

 

 

Рост разделов

Иногда процессу может понадобиться больше памяти, чем предполагалось изначально.

 

Рост разделов

 

 

Настройка адресов и защита памяти

В предыдущих примерах мы можем увидеть две основные проблемы.

· Настройка адресов или перемещение программ в памяти

· Защита адресного пространства каждой программы

Решение обоих проблем заключается в оснащении машины специальными аппаратными регистрами.

· Базовый (указывает начало адресного пространства программы)

· Предельный (указывает конец адресного пространства программы)