ВУЗ:
Составители:
14
памяти) и оперировал с сегментами, размером, не превышающим 64 Кбайт
(для размера сегмента использовались 16 разрядов).
Рисунок 1.5 – Структура дескриптора сегмента
После появления полностью 32-разрядного процессора i386
появилась необходимость в увеличении размера соответствующих полей.
Однако из соображений все той же совместимости формат существующего
дескриптора не изменили, а просто добавили недостающие поля в
дополнительных байтах. Внутри процессора эти поля непрерывны, и
неудобства ему не доставляют. Программистам же приходится иметь
дело
с фрагментированными полями.
Второй вопрос такой: как при поле размера сегмента всего в 20
разрядов (адресуемое пространство – 1 Мбайт) размер описываемого
сегмента может достигать 4 Гбайт? Все дело в поле гранулярности G. Если
это битовое поле имеет значение «0», то размер сегмента в поле
обозначается в байтах, и не может превышать 1 Мбайта. Если же
G = 1, то
размер сегмента выражается в страницах. Так как размер страницы
составляет 4 Кбайта, то 1 М страниц по 4 Кбайта составляет в сумме 4
Гбайта.
памяти) и оперировал с сегментами, размером, не превышающим 64 Кбайт
(для размера сегмента использовались 16 разрядов).
Рисунок 1.5 – Структура дескриптора сегмента
После появления полностью 32-разрядного процессора i386
появилась необходимость в увеличении размера соответствующих полей.
Однако из соображений все той же совместимости формат существующего
дескриптора не изменили, а просто добавили недостающие поля в
дополнительных байтах. Внутри процессора эти поля непрерывны, и
неудобства ему не доставляют. Программистам же приходится иметь дело
с фрагментированными полями.
Второй вопрос такой: как при поле размера сегмента всего в 20
разрядов (адресуемое пространство – 1 Мбайт) размер описываемого
сегмента может достигать 4 Гбайт? Все дело в поле гранулярности G. Если
это битовое поле имеет значение «0», то размер сегмента в поле
обозначается в байтах, и не может превышать 1 Мбайта. Если же G = 1, то
размер сегмента выражается в страницах. Так как размер страницы
составляет 4 Кбайта, то 1 М страниц по 4 Кбайта составляет в сумме 4
Гбайта.
14
Страницы
- « первая
- ‹ предыдущая
- …
- 12
- 13
- 14
- 15
- 16
- …
- следующая ›
- последняя »
