101
4.2.10. Устройство страничного преобразования 
Устройство страничного преобразования обеспечивает дос-
туп  к  структурам  данных,  которые  больше  имеющегося  про-
странства  памяти,  храня  их  частично  в  памяти  и  частично  на 
диске. При страничном преобразовании линейное адресное про-
странство разделяется на блоки по 4 Кб, называемые страница-
ми.  Для  отображения линейного адреса в  физический  применя-
ются структуры данных, называемые таблицами страниц. Эле-
ментами  таблиц  страниц  являются  своеобразные  дескрипторы 
страниц,  которые  проще  дескрипторов  сегментов.  Физические 
адреса  используются  кэш-памятью  и/или  выдаются  на  шину 
процессора. Устройство страничного преобразования фиксирует 
такие  ситуации,  как  обращение  к  странице,  отсутствующей  в 
памяти, и формирует особые случаи, называемые страничными 
нарушениями. При страничном нарушении операционная систе-
ма должна передать нужную страницу с диска в память. При не-
обходимости она  может освободить  пространство в  памяти, от-
сылая некоторую другую страницу на диск (такая замена одной 
страницы  на  другую  называется  свопингом  –  swapping).  Если 
страничное преобразование программно запрещено, физический 
адрес совпадает с линейным адресом. В устройство страничного 
преобразования  входит  ассоциативный  буфер  преобразования 
(Translation  Look-a-side  Buffer,  или  TLB),  который  хранит  32 
наименее  давно  используемых  элемента  таблицы  страниц. 
Структуры данных буфера TLB показаны на рис. 4.5. Устройст-
во страничного преобразования просматривает линейные адреса 
в TLB. Если оно не находит линейного адреса в TLB, то форми-
рует запрос на загрузку в TLB правильного физического адреса 
из таблицы страниц в памяти. Только когда правильный элемент 
таблицы  страниц  находится  в  TLB,  инициируется  цикл  шины. 
Когда устройство страничного преобразования отображает стра-
ницу из линейного адресного пространства на страницу в физи-
ческой памяти, оно изменяет только 20 старших бит линейного 
адреса.  Младшие  12  бит  физического  адреса  берутся  неизмен-
ными из линейного адреса.