- •1.1. Понятие архитектуры компьютеров
- •1.2. Архитектура аппаратных средств
- •1.3. Архитектура неймановского компьютера
- •1.4. Архитектура постнеймановських компьютеров
- •2.1. Архитектура системной платы
- •2.1.1. Синхронизация
- •2.1.2. Чипсет
- •2.2. Система шин
- •2.2.1. Особенности организации работы шины
- •3.1. Общие характеристики микропроцессоров и эволюция развития
- •3.2. Программная модель
- •3.2.1. Программная модель 16-разрядных микропроцессоров
- •3.3. Организация защищенного режима
- •33.1. Основные понятия защищенного режима
- •4.1. Логическая организация памяти
- •4.1.1. Распределение адресного пространства памяти
- •4.1.2. Расширенная память
- •4.1.3. Отображаемая (дополнительная) память (Expanded Memory)
- •4.1.4. Системная или "теневая" память (Shadow ram)
- •4.2. Физическая организация памяти
- •Системная поддержка lpt-порта
- •7.1. Организация прерываний
- •8.2. Программируемый контроллер прерываний
3.3. Организация защищенного режима
33.1. Основные понятия защищенного режима
Принцип открытых систем, применяемый при создании современных вычислительных ресурсов, позволяет при малых затратах допускать активное массовое использование различных схемотехнических и системотехнических решений. Однако массовое использование одних и тех же ресурсов вызывает другую острую проблему - защиту от несанкционированного доступа.
Минимальная защита, которая используется во всех компьютерах предусматривает использование двух режимов работы: - системного режима (режим супервизора - Supervisor) и пользовательского режима (User). На уровне этой защиты ограничивается доступ пользователей в систему, в то время как супервизорные программы имеют доступ ко всем ресурсам системы. В самом простом случае для этого используются привилегированные команды, такие как команда ввода/вывода, работы с системными регистрами, на которые откликается операционная система В режиме User программам запрещается бесконтрольно влиять на общесистемные ресурсы.
Развитие многозадачного режима требует дальнейшего развития средств защиты, которые должны гарантировать отсутствие неконтролируемого взаимодействия между задачами пользователей . В последнее время особую важность приобретают вопросы секретности, которые позволяют рядовым пользователям самостоятельно организовать защиту своих задач
Защищенный режим является основным режимом работы 32-разрядных МП и предназначен для обеспечения независимости выполнения нескольких задач, что подразумевает защиту ресурсов одной задачи от возможного воздействия другой (под задачами подразумеваются как приложения так и задачи операционной системы).
Основным защищаемым ресурсом является память, в которой хранятся коды, данные (включая стек) и различные системные таблицы. Защищать требуется и совместно используемую аппаратуру, обращение к которой обычно происходит через операции ввода/вывода и прерывания В защищенном режиме процессор аппаратно реализует многие функции защиты, необходимые для построения супервизора многозадачной ОС в том числе механизм виртуальной памяти. '
Защита памяти основана на сегментации. В защищенном режиме сегменты распределяются операционной системой между задачами но любая задача сможет использовать только разрешенные для нее сегменты памяти выбирая их с помощью селекторов из предварительно сформированных таблиц дескрипторов сегментов.
Процессор может обращаться только к тем сегментам памяти, для которых имеются дескрипторы в таблицах. Для неиспользуемых сегментных регистров предназначен нулевой селектор сегмента, формально адресующийся к самому первому элементу глобальной таблицы. Попытка обращения к памяти по такому сегментному регистру вызовет исключение. Исключение возникнет и при попытке загрузки нулевого селектора в регистр CS или SS.
Дескрипторы представляют собой 8-байтные структуры данных, используемые для определения свойств программных элементов (сегментов, вентилей и таблиц). Дескриптор определяет положение элемента в памяти, размер занимаемой им области, его назначение и характеристики защиты. Все дескрипторы хранятся в таблицах, обращение к которым поддерживается процессором аппаратно.
Контроль характеристик защиты дескрипторов (поля "Тип" и DPL) позволяет установить форматы требуемых дескрипторов в соответствие с назначением используемого сегмента. Данный контроль проводится при загрузке в сегментный регистр селектора дескриптора для контроля допустимости такой операции и при выполнении команды обращения к сегментному регистру.
Защита памяти с помощью сегментации не позволяет:
- использовать сегменты не по назначению (например, пытаться трактовать область данных как коды инструкций);
- нарушать права доступа (пытаться модифицировать сегмент, предназначенный только для чтения, обращаться к сегменту, не имея достаточных привилегий, и т. п.);
- адресоваться к элементам, выходящим за границу сегмента;
- изменять содержимое таблиц дескрипторов (параметров сегментов), не имея достаточных привилегий.
Защищенный режим предоставляет средства переключения задач. Состояние каждой задачи (значение всех связанных с ней регистров процессора) может быть сохранено в специальном сегменте состояния задачи TSS, на который указывает селектор в регистре задачи ТР. При переключении задач достаточно загрузить новый селектор в регистр задачи, и состояние текущей задачи автоматически сохранится в ее TSS, а в процессор загрузится состояние новой (возможно, ранее прерванной) задачи, и начнется (продолжится) ее выполнение.
Механизм виртуальной памяти позволяет любой задаче использовать логическое адресное пространство размером до 64 Тбайт (16 К сегментов по 4 Гбайт). Неиспользуемый сегмент может быть выгружен из оперативной памяти во внешнюю, а на освободившееся место из внешней памяти может загружаться другой сегмент (свопинг или подкачка).
Лекция 4. Системная память персонального компьютера
Системная память ПК включает в себя оперативную или основную память (ОЗУ), кэш-память, постоянную память (ПЗУ), энергонезависимую память и буферную память различных адаптеров.
Оперативная память используется для размещения операционной системы, хранения кодов программ и данных, оперативного обмена информацией между процессором, внешней памятью (например, дисковой) и периферийными подсистемами (графика, ввод/вывод, коммуникации и т. п.).
ОЗУ (RAM - Random Access Memory) - память с произвольным доступом. Произвольность доступа подразумевает возможность операций записи или чтения с любой ячейкой ОЗУ в произвольном порядке. Требования, предъявляемые к основной памяти:
- большой объем, исчисляемый единицами, десятками и даже сотнями мегабайт;
- быстродействие и производительность, позволяющие реализовать вычислительную мощность современных процессоров;
- высокая надежность хранения данных - ошибка даже в одном бите в принципе может привести к ошибкам вычислений, искажению и потере данных.
ОЗУ сохраняет информацию только при включенном питании ПК. При отключении питания информация в ОЗУ разрушается.
Кэш-память - сверхоперативная память (СОЗУ), является промежуточным буфером между ОЗУ и его «клиентами» - процессором (одним или несколькими) и другими абонентами системной шины, более быстродействующая и используется для сокращения времени доступа к данным. Кэш-память не является самостоятельным хранилищем; информация в ней не адресуема клиентами подсистемы памяти, присутствие кэша для них «прозрачно». Кэш хранит копии блоков данных тех областей ОЗУ, к которым происходили последние обращения, и весьма вероятное последующее обращение к тем же данным будет обслужено кэш-памятью существенно быстрее, чем оперативной памятью.
Постоянная память используется для энергонезависимого хранения системной информации. Эта память при обычной работе компьютера только считывается, поэтому ее название - ROM (Read Only Memory - память только для чтения). Требуемый объем памяти этого типа невелик - например, BIOS PC/XT помещалась в 8 Кбайт, в современных компьютерах типовое значение - 128 Кбайт. ПЗУ программируется при изготовлении ПК, во время работы используется только в режиме чтения и хранит программу тестирования ПК при включении питания (процедуру POST), а также драйверы управления модулями ПК (BIOS) и необходимые для их работы данные, т.е. обработчики аппаратных и программных прерываний BIOS.
Полупостоянная память используется для хранения информации о конфигурации компьютера. Традиционная память конфигурации вместе с часами-календарем (CMOS Memory и CMOS RTC) имеет объем несколько десятков байт, ESCD - (Extended Static Configuration Data) область энергонезависимой памяти, используемая для конфигурирования устройств Plug and Play - имеет объем несколько килобайт. Сохранность данных полупостоянной памяти при отключении питания компьютера обеспечивается маломощной внутренней батарейкой или аккумулятором.
Буферная память различных адаптеров (коммуникационных, дисковых и пр.) обычно является разделяемой между процессором (точнее, абонентами системной шины) и контроллерами устройств. К этой памяти относятся и 16-байтные FIFO-буферы СОМ-портов, и 16-мегабайтные (и более) кэш-буферы высокопроизводительных SCSI-адаптеров.
