Физические адреса соответствуют номерам ячеек оперативной
памяти, где в действительности расположены или будут расположены
переменные и команды. Переход от виртуальных адресов к
физическим может осуществляться двумя способами. В первом случае
замену виртуальных адресов на физические делает специальная
системная программа «перемещающий загрузчик» при загрузке
задачи в память.
Второй способ заключается в том, что программа загружается в
память в неизмененном виде в виртуальных адресах, Во время
выполнения программы при каждом обращении к оперативной памяти
выполняется преобразование виртуального адреса в физический.
Второй способ является более гибким, он допускает перемещение
программы во время ее выполнения, в то время как перемещающий
загрузчик
жестко
привязывает
программу
к
первоначально
выделенному ей участку памяти. Вместе с тем использование
перемещающего загрузчика уменьшает накладные расходы, так как
преобразование каждого виртуального адреса происходит только один
раз во время загрузки, а во втором случае — каждый раз при
обращении по данному адресу [5].
5.2
Методы
распределения памяти без использования
дискового пространства
Все методы управления памятью могут быть разделены на два
класса: методы, которые используют перемещение процессов между
оперативной памятью и диском, и методы, которые не делают этого
(рисунок 13).
Ба ной* лыси&юсс
«НЯІІНЖУШ
Ш
М
ІЮ
СОфСВ «М
ИШ
ИН
уцдииим
Дю ш игкш сш
р
и
ш
л
а
м
н
Л
ф
т
я
и
м
ш
м
м
р
и
к
ш
м
м
С
ш
х
м
в
м
м
м
н
м
С
і р
С
о
ш
о
м
и
р
і П
ф
Щ
И
Ш
О
Ц
С
т
е
л
ю
*
< гр « ю л и о е
ршфдептм*
Рисунок 13 - Классификация методов распределения памяти
38
Самым простым способом управления оперативной памятью
является разделение ее на несколько разделов фиксированной
величины. Это может быть выполнено вручную оператором во время
старта системы или во время ее генерации. Очередная задача,
поступившая на выполнение, помещается либо в общую очередь
(рисунок 14 а), либо в очередь к некоторому разделу (рисунок 14 б).
Подсистема управления памятью в этом случае выполняет
следующие задачи:
- сравнивая размер программы, поступившей на выполнение, и
свободных разделов, выбирает подходящий раздел;
- осуществляет загрузку программы и настройку адресов.
При очевидном преимуществе — простоте реализации — данный
метод имеет существенный недостаток - жесткость. Так как в каждом
Достарыңызбен бөлісу: