3.3.1 Карта памяти процессора — модель памяти MIPS |
Предыдущая Содержание Следующая |
Адресное пространство процессора для 32-х разрядных процессоров MIPS (4 Гб) разделено на четыре области, как это показано на Рисунке 3.3.
Рисунок 3.3 Карта памяти MIPS.
▪KSEG0: диапазон адресов этого сегмента от 0x80000000 до 0x9fffffff. Эти адреса отображаются на 512 Мб физической памяти. Трансляция виртуального в физический адрес происходит простым выключением самого старшего бита виртуального адреса. Это адресное пространство всегда идёт в кэш и оно должно быть создано только после того, как кэш правильно проинициализирован. Также это адресное пространство не доступно через TLB; поэтому ядро Linux использует это адресное пространство. ▪KSEG1: адресный диапазон этого сегмента от 0xA0000000 до 0xBFFFFFFF. Эти адреса также отображаются на 512 Мб физической памяти; они отображаются путём сбрасывания последних трёх битов виртуального адреса. Тем не менее, разница между KSEG0 и KSEG1 в том, что KSEG1 не использует кэш. Следовательно, это адресное пространство используется сразу после сброса, когда системные кэши находятся в неопределённом состоянии. (Вектор сброса MIPS 0xBFC00000 лежит в этом диапазоне адресов.) Также это адресное пространство используется для привязки периферии ввода-вывода, поскольку оно обходит кэш. ▪KUSEG: адресное пространство этого сегмента от 0x00000000 до 0x7FFFFFFF. Это адресное пространство, выделенное для пользовательских программ. Они транслируются в физические адреса через TLB. ▪KSEG2: адресное пространство этого сегмента от 0xC0000000 до 0xFFFFFFFF. Это адресное пространство, которое доступно через ядро, но получает трансляцию через TLB.
|
Предыдущая Содержание Следующая |