Динамические методы выделения памяти
Границы разделов не фиксированы. Задача состоит в том, чтобы в произвольные моменты времени, каждый из этих разделов может освобождаться.
В случае освобождения памяти в результате окончания выполнения двух смежных процессов, планировщик задач устраняет границы между этими разделами и освобожденную память может выдвинуть под какой-либо процесс.
Достоинства: процент использования оперативной памяти стал гораздо выше, т.к. нет пропадающих участков памяти, которые заняты процессами.
Недостаток: фрагментация памяти все равно существует. Она заключается в том, что если освободилась память после выполнения многих маленьких процессов несмежных между собой, то возникает ситуация, когда большой объемный процесс может не получить достаточного места в памяти.
Выход: использование динамической памяти с динамическими разделами и с уплотнением памяти.
Все процессы загрузки такие же, как и в предыдущем случае
Высвобождается суммарный объем, который оказывается свободен для очередного процесса.
До сих пор данная задача полностью не решена.
Динамическое планирование имеет следующий недостаток: при перемещении программ в другой участок памяти необходимо заново пересчитать адресацию, сохранить стеки, буфера ввода-вывода внешних устройств, программные счетчики и т.д., что является сложным алгоритмом реализации диспетчера. При этом тратится время на пересылку программ из одного участка памяти в другой, что снижает эффективность работы компьютерной системы.
Замечание1: отдельные производители программ предлагают дефрагментаторы памяти типа turbomen, memboast, memdefrag и т.д., которые реализуют функцию освобождения памяти.
Замечание2: ели вышеуказанные программы предлагают уплотнение – не рекомендуется ставить их на компьютер.
Дата добавления: 2016-07-18; просмотров: 1487;