Статус
нашего
сайта:
ICQ Secrets Center is Online  ICQ Information Center


ICQ SHOP
     5-значные
     6-значные
     7-значные
     8-значные
     9-значные
     Rippers List
ОПЛАТА
СТАТЬИ
СЕКРЕТЫ
HELP CENTER
OWNED LIST
РОЗЫСК!New!
ICQ РЕЛИЗЫ
Протоколы ICQ
LOL ;-)
Настройка компьютера
Аватарки
Смайлики
СОФТ
     Mail Checkers
     Bruteforces
     ICQTeam Soft
     8thWonder Soft
     Other Progs
     ICQ Patches
     Miranda ICQ
ФорумАрхив!
ВАШ АККАУНТ
ICQ LiveJournal

Реклама

Наш канал:

irc.icqinfo.ru

Таненбаум Э.- Архитектура компьютера. стр.349


Таненбаум Э.- Архитектура компьютера. стр.349

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

Виртуальная память UltraSPARC III

UltraSPARC III — это 64-разрядная машина, которая поддерживает виртуальную память со страничной организацией и с 64-разрядными виртуальными адресами. Тем не менее по разным причинам программы не могут использовать 64-разрядное виртуальное адресное пространство целиком. Поддерживается только 44 бита, поэтому программы не могут превышать 1,8 х 1013 байт. Доступная виртуальная память делится на 2 зоны по 243 байт каждая, одна из которых находится в верхней части виртуального адресного пространства, другая — в нижней. Между ними находится свободная область, адреса которой не используются. Попытка обратиться к ним вызовет ошибку отсутствия страницы.

Максимальная физическая память компьютера UltraSPARC III составляет 241 байт (2200 Гбайт). Поддерживается 4 размера страниц: 8, 64 и 512 Кбайт, а также 4 Мбайт. Механизм отображения этих страниц показан на рис. 6.15.

Таненбаум Э.- Архитектура компьютера.

Рис. 6.15. Отображение виртуальных адресов на физические в машине UltraSPARC III

Из-за огромного виртуального адресного пространства обычная таблица страниц (как в Pentium 4) будет непрактичной. В UltraSPARC III применяется совершенно другой подход. Диспетчер памяти поддерживает так называемый буфер быстрого преобразования (Translation Lookaside Buffer, TLB). Этот буфер отображает номера виртуальных страниц на номера физических страничных кадров. Для страниц размером в 8 Кбайт существуют 231 номеров виртуальных страниц, то есть более двух миллиардов. Естественно, не все они могут быть отображены.

Поэтому TLB содержит только номера тех виртуальных страниц, которые использовались последними. Страницы команд и данных рассматриваются отдельно. Для каждой из этих категорий в TLB включены номера 64-х последних виртуальных страниц. Каждый элемент этого буфера включает номер виртуальной страницы и соответствующий ему номер физического страничного кадра. Когда номер процесса, называемый контекстом, и виртуальный адрес передаются диспетчеру памяти, диспетчер с помощью специальной схемы одновременно сравнивает номер виртуальной страницы со всеми элементами буфера TLB для данного контекста. Если обнаруживается совпадение, номер страничного кадра в этом элементе буфера соединяется со смещением, взятым из виртуального адреса, чтобы получить 41-разрядный физический адрес и обработать некоторые флаги (например, биты защиты). Буфер быстрого преобразования адреса изображен на рис. 6.16, а.

Если совпадение не обнаруживается, то есть имеет место TLB-промах (по аналогии с кэш-промахом), вызывается исключение, которое перехватывается

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


⇐ Предыдущая страница| |Следующая страница ⇒

.