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

5. Управление оперативной памятью

Иерархическая структура памяти:

1) Сверхбыстрый кэш – энергозависимый

2) Среднебыстрая оперативная память – энергозависимая

3) Медленная дисковая память – энергонезависимая

***

Менеджер памяти – часть ОС, отвечающая за управление памятью.

Функции:

1) Проверка используемой памяти;

2) Выделение памяти процессам;

3) Освобождение ресурсов по завершении работы процессов;

4) Управление обменом данными между ОЗУ и диском.

***

Два класса систем управления памятью:

1) без перемещения процессов между жёстким диском и памятью (подкачки);

2) paging (страничная подкачка процессов) и swapping (полная подкачка процессов).

***

Схемы управления памятью:

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

В каждый момент времени работает только одна программа, память разделяется между ней и ОС. ОС может располагаться:

– в нижней части памяти (в ОЗУ): схема, характерная для мэйнфреймов и мини-компьютеров;

– в верхней части памяти (в ПЗУ): КПК и встроенные системы;

– в ОЗУ — ОС, в ПЗУ — драйвера: ранние ПК (с DOS). Часть ПЗУ называлась BIOS (Basic Input-Output System);

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

2) Многозадачность с фиксированными разделами

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

Недостаток подобного метода очевиден: когда запускается много небольших процессов, очередь к малым разделам разрастается, в то время, как большие разделы простаивают.

Альтернативная реализация подразумевает единую очередь. При освобождении области памяти, в очереди осуществляется поиск и предоставляется приоритетное обслуживание наибольшей, помещающейся в данную область, задаче. В результате, наименьшие (как правило — интерактивные) процессы дискриминируются. Для предотвращения подобной ситуации возможно создание небольшой области для обслуживания маленьких задач.

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

***

Моделирование многозадачности

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

***

Подкачка

1) Свопинг – процессы загружаются в память и выгружаются на диск динамически. При этом главное отличие от схемы с фиксированными разделами в том, что здесь размер разделов зависит от объёма процессов, изменяется динамически.

2) Виртуальная память – находиться в памяти или на диске могут не только целые программы, а также их части. Виртуальные адреса преобразуются в физические.