пользователей: 21281
предметов: 10473
вопросов: 178149
Конспект-online
зарегистрируйся или войди через vk.com чтобы оставить конспект.
РЕГИСТРАЦИЯ ЭКСКУРСИЯ


(22) Управление памятью. Основные функции

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


Функции управления памятью:
▪ отслеживание свободной и занятой памяти;
▪ выделение памяти процессам и освобождение памяти по завершении процессов;
▪ вытеснение кодов и данных процессов из оперативной памяти на диск (полное или
частичное), когда размеры основной памяти не достаточны для размещения в ней всех
процессов, и возвращение их в оперативную память, когда в ней освобождается место;
(свободной оперативной памяти может быть недостаточно для размещения в ней программ, в этом случае программист должен позаботиться о том, чтобы так часть программы, которая управляет всеми процессами определилась как резидентная, т.е. постоянно находящаяся в ОП, остальные части программы могут быть транзитными, т.е. загружаемые в ОП в момент обращения к ним и выгружаемыми по окончании работы. В этом случае все внутренние переменные этих процессов (подпрограмм) уничтожаются, кроме того, программа может быть разбита на части (страницы) независимо от выполняемых на этих страницах функций. В ОП находятся только те страницы, к адресам которых происходит обращение, если страница расположена на диске, но к ней произведено обращение, ОС должна загрузить эту страницу в ОП, вытесняя неактивные страницы.
▪ настройка адресов программы на конкретную область физической памяти; (для
правильной работы программы, которая может перемещаться в ОП, как в процессе
загрузки, так и в процессе перемещения страниц необходима корректировка адресов.
Быстрая перенастройка адресов выполняется программой аппаратно с использованием
базовой адресации, основанной на использовании сегментных регистров, CS, ES)

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

 


30.06.2014; 16:01
хиты: 0
рейтинг:0
для добавления комментариев необходимо авторизироваться.
  Copyright © 2013-2016. All Rights Reserved. помощь