stringtranslate.com

Плоская модель памяти

Модель плоской памяти или модель линейной памяти относится к парадигме адресации памяти , в которой « память представляется программе как единое непрерывное адресное пространство ». [1] ЦП может напрямую (и линейно ) обращаться ко всем доступным ячейкам памяти , не прибегая к каким-либо переключениям банков , сегментации памяти или схемам подкачки .

Управление памятью и трансляция адресов по-прежнему могут быть реализованы поверх плоской модели памяти, чтобы облегчить функциональность операционной системы , защиту ресурсов, многозадачность или увеличить емкость памяти за пределы, налагаемые физическим адресным пространством процессора, но Ключевой особенностью плоской модели памяти является то, что все пространство памяти линейно, последовательно и непрерывно.

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

В компьютерной системе общего назначения, которая требует многозадачности, распределения ресурсов и защиты, плоская система памяти должна быть дополнена некоторой схемой управления памятью, которая обычно реализуется посредством комбинации выделенного аппаратного обеспечения (внутри или вне ЦП) и программного обеспечения, созданного в операционную систему. Модель плоской памяти (на уровне физической адресации) по-прежнему обеспечивает наибольшую гибкость для реализации этого типа управления памятью.

Модели памяти

Большинство современных моделей памяти попадают в одну из трех категорий:

Плоская модель памяти

Модель страничной памяти

модель сегментированной памяти x86

В архитектурах x86 при работе в реальном режиме (или эмуляции) физический адрес вычисляется как: [2]

Адрес = 16 × сегмент + смещение

(То есть 16-битный сегментный регистр сдвигается влево на 4 бита и добавляется к 16-битному смещению, в результате чего получается 20-битный адрес.)

Смотрите также

Рекомендации

  1. ^ Гонсалес, Антонио; Латорре, Фернандо; Магклис, Григориос (2011). Микроархитектура процессора: перспектива реализации. Издательство Морган и Клейпул. п. 72. ИСБН 9781608454525.
  2. ^ Общее описание реального режима «Физический адрес может быть рассчитан как Value_in_segment_register».
    • 16 + Value_in_offset_register."