Логический и физический адрес в операционной системе

Опубликовано: 3 Декабря, 2021

Логический адрес генерируется ЦП во время работы программы. Логический адрес - это виртуальный адрес, поскольку он не существует физически, поэтому он также известен как виртуальный адрес. Этот адрес используется в качестве ссылки для доступа ЦП к области физической памяти. Термин «логическое адресное пространство» используется для обозначения набора всех логических адресов, генерируемых перспективой программы.
Аппаратное устройство, называемое блоком управления памятью, используется для сопоставления логического адреса с его соответствующим физическим адресом.

Физический адрес определяет физическое расположение необходимых данных в памяти. Пользователь никогда не работает напрямую с физическим адресом, но может получить доступ по соответствующему логическому адресу. Пользовательская программа генерирует логический адрес и считает, что программа работает по этому логическому адресу, но программе требуется физическая память для ее выполнения, поэтому логический адрес должен быть отображен на физический адрес с помощью MMU, прежде чем они будут использоваться. Термин «физическое адресное пространство» используется для всех физических адресов, соответствующих логическим адресам в логическом адресном пространстве.


Сопоставление виртуального адреса физическим адресам
Различия между логическим и физическим адресом в операционной системе

  1. Основное различие между логическим и физическим адресом состоит в том, что логический адрес генерируется ЦП с точки зрения программы, тогда как физический адрес - это место, которое существует в блоке памяти.
  2. Логическое адресное пространство - это набор всех логических адресов, генерируемых ЦП для программы, тогда как набор всех физических адресов, отображаемых на соответствующие логические адреса, называется физическим адресным пространством.
  3. Логический адрес не существует физически в памяти, тогда как физический адрес - это место в памяти, к которому можно получить физический доступ.
  4. Идентичные логические адреса генерируются методами привязки адресов времени компиляции и загрузки, тогда как они отличаются друг от друга методом привязки адресов времени выполнения. Пожалуйста, обратитесь к этому за подробностями.
  5. Логический адрес генерируется ЦП во время работы программы, тогда как физический адрес вычисляется блоком управления памятью (MMU).

Сравнительная таблица:

Параметр ЛОГИЧЕСКИЙ АДРЕС ФИЗИЧЕСКИЙ АДРЕС
Базовый генерируется CPU место в блоке памяти
Адресное пространство Логическое адресное пространство - это набор всех логических адресов, генерируемых ЦП по отношению к программе. Физический адрес - это набор всех физических адресов, сопоставленных с соответствующими логическими адресами.
Видимость Пользователь может просмотреть логический адрес программы. Пользователь никогда не может просматривать физический адрес программы.
Поколение генерируется ЦП Рассчитано MMU
Доступ Пользователь может использовать логический адрес для доступа к физическому адресу. Пользователь может получить доступ к физическому адресу косвенно, но не напрямую.