Адресное пространство процесса 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Адресное пространство процесса

Поиск

32 bit

Регистры данных          EAX, EBX, ECX, EDX

Индексные регистры   ESI, EDI

Сегментные регистры ES, DS, CS, SS, FS, GS

Регистры-указатели     EIP, EBP, ESP

Регистр флагов              EFLAGS (Program Status Register)

Адреса (абсолютные):

EIP                                    адрес текущей команды (EIP + PSR = PSW)

ESP                                    адрес стека

EBP                                   адрес данных

EAX/EBX/ECX/EDX    адрес данных

Адресное пространство процесса

1. Код CS:IP

2. Данные DS:BP (ES:DX)

3. Управляющая информация

· Стек SS:SP – память для передачи параметров и т.п.

· Куча – область памяти, выделяемая динамически (malloc, переменные и т.п.).

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

1. Tiny – Все сегментные регистры имеют одно значение (один сегмент), используются только near адреса.

2. Small – Под каждый элемент программы не более одного сегмента. Сегментные регистры не меняются, но имеют разные значения. Внутри сегмента – near, между сегментами – far.

3. Compact - 1 сегмент кода, несколько сегментов данных (для данных – far, кода – near)

4. Medium - 1 сегмент данных, несколько сегментов кода (для кода – far, данных – near)

5. Large – несколько сегментов кода и несколько сегментов данных, но 1 статический элемент данных не более одного сегмента (не возможно выделить память больше 64Kb)

6. Huge – то же, но без ограничений

9. Основная память PC.

32 bit

2 GB – ОС

2 GB - приложения

16 bit

У процессора 20-ти разрядная шина, т.е. можно адресовать 220 байт=1Мб, но регистры процессора – 16 бит.

Для адресации 1Мб памяти используется следующая схема: используется номер сегмента и смещение – два 16-битовых числа.

3 типа адресации пространства микропроцессора:

доступно в реальном режиме

CMA - Conventional Memory Area

0-640K

Ядро ОС + приложения

UMA(B) – Upper Memory Area (Block)

расположена на контроллерах

640K-1M

Служебная область. Физические сегменты:

A, B – Video RAM (ROM)

C, D, E – на различные нужды*

F – ROM (BIOS)

HMA – High Memory Area

HMA - это часть XMA!

1M..1M+64K-16

Дополнительные драйверы

 

XMA – Extended Memory Area

1M…

Динамическая память для программ

*Сегменты C, D, E используются в качестве окна для EMS, Shadow-памяти (туда перегружаются программы из ПЗУ/BIOS) или используются некоторыми программами ОС.

Два стандарта использования XMA:

· XMS – Extended Memory Specification. Процессор на время обращения к расширенной памяти переводится в защищенный режим.

· EMS – Expanded Memory Specification. Отображение через сегменты C/D/E (окно до 64Kb) c помощью драйвера.



Поделиться:


Последнее изменение этой страницы: 2024-06-27; просмотров: 50; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.217.128 (0.006 с.)