Н. К. Токжигитова а ционные системы


транслятор  присваивает  переменным  и  командам  виртуальные



Pdf көрінісі
бет28/79
Дата31.01.2022
өлшемі3,3 Mb.
#116517
түріУчебное пособие
1   ...   24   25   26   27   28   29   30   31   ...   79
Байланысты:
book 0846

транслятор  присваивает  переменным  и  командам  виртуальные

 

(условные)  адреса.  Совокупность  виртуальных  адресов  процесса

 

называется  виртуальным адресным  пространством.

Символьные

имена

Идентификаторы переменных л

 

программе на алгоритмическом языке

Виртуальные 

Условные адреса,  вырабатываемые

 

адреса 



транслятором

1) перемещающий загрузчик

 - 


статическое преобразование

2) динамическое преобразование

 

аппаратными средствами

Физические

адреса


Рисунок  12 -  Типы адресов

37



Физические  адреса  соответствуют  номерам  ячеек  оперативной

 

памяти,  где  в действительности расположены  или  будут расположены

 

переменные  и  команды.  Переход  от  виртуальных  адресов  к

 

физическим может осуществляться двумя способами.  В  первом случае

 

замену  виртуальных  адресов  на  физические  делает  специальная

 

системная  программа  «перемещающий  загрузчик»  при  загрузке

 

задачи в память.

Второй  способ  заключается  в  том,  что  программа  загружается  в

 

память  в  неизмененном  виде  в  виртуальных  адресах,  Во  время

 

выполнения программы  при каждом обращении  к оперативной памяти

 

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

 

Второй  способ  является  более  гибким,  он  допускает  перемещение

 

программы  во  время  ее  выполнения,  в  то  время  как  перемещающий

 

загрузчик 

жестко 

привязывает 

программу 

к 

первоначально

 

выделенному  ей  участку  памяти.  Вместе  с  тем  использование

 

перемещающего  загрузчика  уменьшает  накладные  расходы,  так  как

 

преобразование каждого виртуального адреса происходит только один

 

раз  во  время  загрузки,  а  во  втором  случае  —  каждый  раз  при

 

обращении по данному адресу [5].



5.2 

Методы 

распределения  памяти  без  использования

 

дискового пространства



Все  методы  управления  памятью  могут  быть  разделены  на  два

 

класса:  методы,  которые  используют  перемещение  процессов  между

 

оперативной  памятью  и  диском,  и  методы,  которые  не  делают  этого

 

(рисунок  13).

Ба ной* лыси&юсс

«НЯІІНЖУШ

Ш

М

ІЮ

СОфСВ «М

ИШ

ИН

 

уцдииим



Дю ш игкш сш

р

и



ш

л

а



м

н

Л



ф

т

я



и

м

ш



м

м

р



и

к

ш



м

м

С



  ш

х

м



в

м

м



м

н

м



С

і р


С

о

ш



о

м

и



р

і П


ф

Щ

И



Ш

О

Ц



С

т

е



л

ю

*



< гр « ю л и о е

ршфдептм*

Рисунок  13 -  Классификация методов распределения памяти

38



Самым  простым  способом  управления  оперативной  памятью

 

является  разделение  ее  на  несколько  разделов  фиксированной

 

величины.  Это  может  быть  выполнено  вручную  оператором  во  время

 

старта  системы  или  во  время  ее  генерации.  Очередная  задача,

 

поступившая  на  выполнение,  помещается  либо  в  общую  очередь

 

(рисунок  14 а), либо в очередь к некоторому разделу (рисунок  14 б).



Подсистема  управления  памятью  в  этом  случае  выполняет

 

следующие задачи:



-  сравнивая  размер  программы,  поступившей  на  выполнение,  и

 

свободных разделов, выбирает подходящий раздел;



- осуществляет загрузку программы и настройку адресов.

При  очевидном  преимуществе  — простоте  реализации  — данный

 

метод  имеет существенный  недостаток -  жесткость.  Так  как  в  каждом

 



Достарыңызбен бөлісу:
1   ...   24   25   26   27   28   29   30   31   ...   79




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет