Обзор x86 процессоров — страница 12

  • Просмотров 2658
  • Скачиваний 176
  • Размер файла 50
    Кб

хранением программ операционным системам и избегать написания программ с перекрывающимися структурами) и конечные пользователи (которые могут вводить новые и большие по объему прикладные программы, не опасаясь нехватки памяти). Виртуальная память реализуется операционной системой с соответствующей аппаратурной поддержкой. Микропроцессор 80386 обеспечивает работу с системами виртуальной памяти с сегментной или страничной

организацией. Сегментная виртуальная память больше подходит для небольших 16-битных систем, в которых объем сегмента не превышает 64 кбайт. 80386 обеспечивает работу с сегментами объемом до 4 гбайт; поэтому в большинстве больших систем на базе 80386 системы виртуальной памяти будут использовать возможность страничного запроса. Для каждой страницы 80386 вырабатывает биты присутствия, занятости или регистрации обращения, которые

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

информации. Эта кэш-память (называемая буфером просмотра трансляции, TLB) содержит информацию о распределении адресов 32 страниц, использовавшихся последними. Страницы виртуальной памяти 80386 имеют об'ем 4 кбайт, храня одновременно распределение 128 кбайт памяти, буфер TLB позволяет 80386 преобразовать адреса внутри кристалла, не обращаясь к хранящейся в памяти таблице страниц. В типичных системах 98-99% поиска адресов будет

осуществляться через буфер TLB. 3.4 Механизмы защиты Выполняя 3-4 миллиона операций в секунду, 80386 имеет достаточно вычислительной мощности для обеспечения самых сложных систем, состоящих из сотен или тысяч программных модулей. В таких системах вопрос заключается не в том, будут ли ошибки, а в том как их накти и повозможности быстро устранить и насколько их действие может быть ограничено. Такие системы могут быть быстро отлажены и

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