- •Организация памяти Характеристики устройств памяти
- •Иерархическая структура памяти эвм
- •Виды памяти Постоянная память пзу
- •Оперативная память
- •Физическая структура оп
- •Виды динамических запоминающих устройств.
- •Кэш-память
- •Стековая память
- •Защита памяти
- •Ключи защиты
- •Кольца защиты
- •Метод граничных регистров
- •Вопросы для самопроверки
- •4.4.4. Методы повышения пропускной способности оперативной памяти
- •4.4.5. Методы защиты памяти
- •4.4.6. Методы ускорения процессов обмена между оп и взу
- •Интерфейсы
- •Характеристики интерфейсов
- •Внутренние интерфейсы
- •Интерфейсы внешней памяти.
- •Универсальные последовательные интерфейсы.
- •Беспроводные интерфейсы
- •Вопросы для самопроверки
Стековая память
Стековая память обеспечивает дисциплину обслуживания «последним пришёл – первым вышел». Эта память обычно применяется для сохранения и восстановления содержимого регистров при обработке подпрограмм и прерываний. Принцип работы со стеком показан ниже.
В современных ЭВМ наиболее распространён внешний или аппаратно-программный стек, когда для хранения данных отводится область ОП. Обычно это область с наибольшими адресами (т.к. программа загружается, начиная с меньших адресов), а расширение стека производится в сторону уменьшения адресов.
В регистр SP предварительно помещается наибольший адрес области, отведённой под стек.
При занесении в стек очередного слова соответственно уменьшается значение в регистре SP, и оно затем используется как адрес ячейки, к которой было последнее обращение.
При считывании слова из стека в качестве адреса используется значение SP, а после извлечения слова его адрес соответственно увеличивается.
Защита памяти
Термин защита памяти на самом деле подразумевает защиту информации в памяти. Обычно в ЦП существуют специальные средства для защиты программ от вмешательства в работу друг друга.
Защита реализуется за счёт сочетания аппаратных и программных средств.
Независимо от принятых принципов построения подсистемы защиты памяти в основе её функционирования заложена проверка всех адресов, поступающих для обращения к ОП. В результате такой проверки формируется сигнал управления, разрешающий обращение к ОП, если адрес относится к выделенной для данной программы области памяти. В противном случае вырабатывается сигнал, запрещающий выполнение данной команды (при этом посылается запрос на прерывание реализуемой программы с целью установления причины нарушения границ разрешенной для использования области памяти).
Реализация идеи защиты памяти в любом случае не должна сопровождаться заметным снижением производительности машины и не требовать больших аппаратных затрат.
Рассмотрим некоторые методы решения проблемы защиты памяти
Ключи защиты
Для защиты несмежных областей память условно делится на блоки равного размера, каждому блоку памяти присваивается некоторый код – ключ защиты. Каждая программа также получает свой код защиты, он хранится в слове состояния программы. Программа получает доступ к блоку памяти только при совпадении значений ключа её защиты с ключом защиты блока памяти или если ключ защиты программы равен нулю (системная программа).
Кольца защиты
Аппаратно реализовано разделение системного и пользовательского уровня привилегий. В современным ПК введено 4 таких уровня. Наивысшим нулевым уровнем обладает ядро ОС, уровень 1 имеют утилиты ОС, уровень 2 – служебные системны программы. Наименее защищены пользовательские программы, они имеют уровень защиты 3. в системном режиме программе доступны все ресурсы ЭВМ, в пользовательском – есть ограничения. Переключение из пользовательского режима в системный осуществляется специальной командой, вызывающей прерывание.
Метод граничных регистров
Это самый распространённый метод защиты. В ЦП должны быть два специальных регистра, определяющих нижнюю и верхнюю границу области памяти, к которой имеет право доступа программа. Занесение значений границ в эти регистры выполняет ОС в привилегированном режиме при загрузке программы. При любом обращении пользовательской программы к ОП адрес сравнивается с установленными границами и если обнаруживается нарушение защиты, то доступ в память блокируется и формируется прерывание по нарушению защиты.