Функции ОС по управлению памятью в мультипрограммных системах

отслеживание (учет) свободной и занятой памяти;

первоначальное и динамическое выделение памяти процессам и освобождение памяти по завершении процессов;

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

настройка адресов программы на конкретную область физической памяти.

защита памяти, выделенной процессу от возможных вмешательств со стороны других процессов

дефрагментация памяти

Типы адресов. Для идентификации переменных и команд на разных этапах жизненного цикла программы используются символьные имена (метки), виртуальные адреса и физические адреса (рис. 5.1).

Символьные имена присваивает пользователь при написании программы на алгоритмическом языке или ассемблере.

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

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

Задача

Пользовательский процесс формирует строку из 90 символов для вывода на принтер, затрачивая на это 15 мс. Объем буфера равен одной строке. Страница текста содержит 40 строк. Принтер способен печатать 10 страниц в минуту. Будет ли приостанавливаться ли пользовательский процесс? Если да, то насколько?


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: