Электронный учебник:


Курс лекций:


Дополнительно:

Практикум:



Наши хостеры:

2003 Средства для разработки Web-приложений появились в axapta достаточно давно.

--------------------------

Способы организации виртуальной памяти

Поле индекса определяет номер сегмента в таблице дескрипторов. Поле индикатора в таблице сегментов (Table Index)(это бит с номером два) определяет общий это сегмент (0) или локальный (1). Это пространство описывает локальную таблицу дескрипторов IDT. Поле уровня привилегии – биты 0 и 1 указывают запрашиваемый уровень привилегии (Request Privilege Level). При своем запуске операционная система инициализирует GDTR. Этот регистр содержит начальный адрес глобальной таблицы дескрипторов и её размер. Для управления процессами операционная система имеет информационную структуру – дескриптор процесса. Часть дескриптора процесса, с которой работает микропроцессор называется сегментом состояния задачи (Task State Segment). В основном этот сегмент содержит контекст задачи. Процессор получает доступ к TSS с помощью регистра задачи TR. Регистр TRсодержит индекс т.е. номер элемента глобальной таблицы дескрипторов сегмента TSS. Дескриптор заносится в теневую часть регистра. В одном из полей TSSнаходится указатель, т.е. селектор на локальную таблицу дескрипторов данной задачи. При переходе процессора с одной задачи на другую содержимое поля заносится микропроцессом в одноименный регистр. Линейный адрес команды определяется следующим образом – микропроцессор анализирует бит TIв селекторном регистре поля и в зависимости от его значения извлекает из глобальной либо локальной таблицы дескриптор сегментного кода с номером который равен содержимому поля индекс. Этот дескриптор заносится в теневую часть регистра CS. Микропроцессор сравнивает значения регистра EIPс полем размера сегмента, содержащегося в извлеченном сегменте и если смещение относительно начала сегмента не превышает размера сегмента, то значения EIPприбавляется к значению поля начала сегмента и получается искомый линейный адрес. Линейный адрес будет либо равен физическому (если страничное преобразование отключено), либо с помощью страничной трансляции преобразуется физический адрес. Если смещение из регистра EIPпревышает размер сегментного кода, то это аварийная ситуация вызывает прерывание, и управление предается ядру операционной системы.

Image

 

31

 

 

 

 

12

11

 

 

 

 

 

9

8

 

7

6

 

 

5

 

 

4

 

3

 

 

2

 

 

1

 

 

0

Адрес таблицы страниц

Для операционной системы

ОО

Dirty

Acces

OO

User/Ядро

Read/Write

Prescut

Дескриптор для описания страницы имеет следующий формат.

Прежде всего микропроцессор анализирует 0-ой бит. Если поле Prescut равно 0, то данная страница отсутствует в ОЗУ. Бит Dirty отмечает что данная страница модифицирована и её необходимо сохранить на винчестере при её замещении. Бит управления Accessустанавливается в 1, если к данной странице установлен доступ. Этот бит используется для определения страницы которая будет замещаться.

предыдущаяследующая