Главная » Просмотр файлов » Максимов Н.В., Партыка Т.Л., Попов И.И. Архитектура ЭВМ и вычислительных систем (2005)

Максимов Н.В., Партыка Т.Л., Попов И.И. Архитектура ЭВМ и вычислительных систем (2005) (1186253), страница 82

Файл №1186253 Максимов Н.В., Партыка Т.Л., Попов И.И. Архитектура ЭВМ и вычислительных систем (2005) (Максимов Н.В., Партыка Т.Л., Попов И.И. Архитектура ЭВМ и вычислительных систем (2005)) 82 страницаМаксимов Н.В., Партыка Т.Л., Попов И.И. Архитектура ЭВМ и вычислительных систем (2005) (1186253) страница 822020-08-27СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 82)

Дело втом, что ассемблер будет заменять все команды CALL, где указаноимя данной процедуры, на машинные команды близкого перехода свозвратом, а все команды RET внутри процедуры — на близкие возвраты.Если же в директиве PROC указан параметр FAR, то это «дальняя» процедура: все обращения к ней и все команды RET внутри неерассматриваются ассемблером как дальние переходы.

Обращаться кэтой процедуре можно из любых сегментов команд.Таким образом, достаточно лишь указать тип процедуры (близкая она или дальняя), и всю остальную работу возьмет на себя ассемблер: переходы на нее и возвраты из нее будут автоматически согласованы с этим типом. В этом главное (и единственное) достоинство описания подпрограмм в виде процедур. (Отметим, что меткии имена, описанные в процедуре, не локализуются в ней.)Например, вычисление ах := sign (ах) можно описать в видепроцедуры следующим образом'SING PROC FAR ; дальняя процедураCMP AX,0JE SGN1 ;АХ=0 - перейти к SGN1MOV АХ,1 ;АХ:=1 (флаги не изменились!)JG SGN1 ;АХ>0 - перейти к sgnlMOV AX,-1 ;AX:=-1SGN1: RET ;дальний возвратSIGN ENDPВозможный пример обращения к этой процедуре:;CX:=SIGN(VAR)MOV AX,VARCALL SIGN ;дальний вызовMOV CX,AX4194.4.

Защищенный режим4.4. Защищенный режимРассмотрим работу в защищенном режиме процессоров 80286,80386 и более старших моделейАдресация в защищенном режиме 16-разрядного МП 80286В этом режиме механизм адресации отличается от механизмаадресации в реальном режиме (рис. 4.18) За счет использования24-битной адресной шины процессора 80286 физическое адресноепространство достигает 16 Мбайт (2м байт).В данном режиме для определения адресов также необходимыдва регистра, однако содержимое каждого регистра сегмента не соответствует непосредственно какому-либо участку оперативной памяти. Регистр сегмента, который в защищенном режиме называютселектором, в действительности становится индексом, указывающим на элемент таблицы, называемой таблицей дескрипторов(Descriptor Table).

Каждый элемент этой таблицы (называемый дескриптором) характеризует один сегмент команд или один сегментданных. Сегмент стека относят при этом к сегментам данных, поскольку он не содержит исполняемых команд (рис 4.18).Физическая(оперативная) памятьСелектор CSСмещение IPFFFFFFh(16М)C12AB5hMOVAX.2i-»C12ABOhOOOOOOhФизический адресинструкцииФизический адрес начала сегментакомандРис. 4.18. Адресация в защищенном режимеСегментразмеромдо 64 Кбайт(в данномслучае32A4h байт)420Глава 4. Персональные компьютерыДескриптор содержит физический адрес начала сегмента в памяти (базовый адрес), его размер, а также другую информацию.

Базовый адрес размещается в 24 битах (а не в 20, как для реальногорежима), поэтому сегменты не обязательно теперь должны быть выровнены на адрес, кратный 16 Размер сегмента указывается в16 битах, и поэтому может принимать любые значения, меньшиеили равные 64 Кбайт. В этом состоит фундаментальное отличие отреального режима, где каждый сегмент по умолчанию имеет размер64 Кбайт.

После определения базового адреса сегмента к нему прибавляется значение смещения (размещаемого в 16 битах), и процессор может обратиться к соответствующей ячейке памяти. Очевидно,что метод вычисления физических адресов в защищенном режимезначительно сложнее, чем в реальном режиме. Однако эти вычисления выполняются процессором и «прозрачны» для программиста,для которого механизм адресации выглядит неизменным. Действительно, как и в реальном режиме, команды, стек и данные адресуются с помощью соответствующего регистра сегмента (называемогоселектором) и смещения.Эти данные позволяют теперь определить максимальный размер адресного пространства, доступного для каждой программы.В самом деле, мы видели, что поле индекса какого-либо регистраселектора имеет размер 13 бит, что позволяет обратиться к 8192(213 = 8192) дескрипторам в каждой таблице.

Зная значение битаиндикатора таблицы, можно обратиться к двум таблицам, которыесодержат по 8192 дескриптора. Каждый из этих дескрипторов соответствует сегменту с максимальным размером 64 Кбайт(216 = 64 Кбайт). Таким образом, полная виртуальная память, доступная для каждой задачи составляет 8192 х 2 х 64 Кбайт, что рав13630но 1 Гбайт (2 х 2 х 2' = 2 = 1 Гбайт). Пересчет адреса в виртуальной памяти в реальную оперативную память производится процессором автоматически. Это соответствует тому, что физическиеадреса не наблюдаемы или прозрачны для программы.Адресация в защищенном режиме МП 80386 и старшеЗащищенный режим, появившийся в МП 80286, имел не всевозможности, доступные в 32-разрядных процессорах, какими являются 80386, 80486 и Pentium.

На рис. 4.19 показано, как в этих МП(при работе в защищенном режиме) генерируется физический адреспамяти на основе содержимого базового и индексного регистров, атакже находящегося в команде значения смещения. Для получения4214.4. Защищенный резкимСелектор (16 бит)Поле селектора\IИндекс (13 бит)TI = 1LDTПоле RPL(2 бит)TI = ОGDTБитТ!— (индикатор таблицы)Рис. 4.19.

Формирование адреса в защищенном режиме32-разрядного исполнительного адреса значение индексного регистра умножается на коэффициент масштабирования, равный 1, 2, 4или 8, затем результат прибавляется к содержимому базового регистра с учетом заданного в команде смещения.Четырнадцать старших битов одного из шести сегментных регистров определяют дескриптор, используемый в качестве индекса втаблице дескрипторов, из которой извлекается 32-разрядный базовый адрес. Этот адрес прибавляется к исполнительному адресувнутри сегмента, вследствие чего получается 32-разрядный линейный адрес.

Страничный блок, используя таблицу страниц, транслирует линейный адрес в 32-разрядный физический адрес.Таблицы страниц и дескрипторов сегментов довольно велики,поэтому хранятся в основной памяти. Для обеспечения быстройтрансляции может использоваться буфер быстрого преобразованияадресов TLB. В таблицах дескрипторов сегментов содержатся поляправ доступа, а также поля границ сегментов, определяющие ихмаксимальный размер. Этими параметрами управляет операционнаясистема. Они нужны для защиты как операционной системы, так иприкладных программ, находящихся в основной памяти.

Отсюда иназвание данного режима работы процессора — «защищенный».Защищенный режим предназначен для обеспечения независимости выполнения нескольких задач, что подразумевает защиту ре-422Глава 4. Персональные компьютерыИндексКоэффициентмасштабирования1 2, 4 8БазаСмещениеСегментный регистр152 014,Виртуальный адрес,—Л—ч32Исполнительный адресДескрипторБлок сегментации32Линейный адресСтраничный блок32 xf Физический адресРис. 4.20.

Адресация в защищенном режиме МП 80386 и старшесурсов одной задачи от возможного воздействия другой (под задачами подразумеваются как приложения, так и задачи операционнойсистемы)Основным защищаемым ресурсом является память, в которойхранятся коды, данные и различные системные таблицы (например,таблица прерываний) Защищать требуется и совместно используемую аппаратуру, обращение к которой обычно происходит черезоперации ввода/вывода и прерывания В защищенном режиме процессор аппаратно реализует многие функции защиты, необходимыедля построения супервизора многозадачной ОС, в том числе механизм виртуальной памятиЗащита памяти основана на сегментации Сегмент — блок пространства памяти определенного назначения К элементам сегментавозможно обращение с помощью различных инструкций процессора, использующих разные режимы адресации для формирования ад-4.4.

Защищенный режим423реса в пределах сегмента Максимальный размер сегмента —4 Гбайт (для процессоров 8086 и 80286 предел был 64 Кбайт) Сегменты памяти выделяет операционная система, но в реальном режиме любая задача может переопределить значение сегментных регистров, задающих положение сегмента в пространстве памяти, и«залезть» в чужую область данных или кода В защищенном режимесегменты тоже распределяются операционной системой, но прикладная программа сможет использовать только разрешенные длянее сегменты памяти, выбирая их с помощью селекторов из предварительно сформированных таблиц дескрипторов сегментовПроцессор может обращаться только к тем сегментам памяти,для которых имеются дескрипторы в таблицах Механизм сегментации формирует линейный адрес по схеме, приведенной на рис 4 21Дескрипторы выбираются с помощью 16-битных селекторов,программно загружаемых в сегментные регистры, формат селекторов приведен на рис 4 22Индекс совместно с индикатором таблицы TI позволяет выбрать дескриптор из локальной (TI = 1) или глобальной (TI = 0)Логический адрес15Рис.

4.21. Формирование линейного адреса153 2 1IndexТiОRPLРис. 4.22. Формат селектора адреса424Глава 4. Персональные компьютерытаблицы дескрипторов Для неиспользуемых сегментных регистровпредназначен нулевой селектор сегмента, формально адресующийся к самому первому элементу глобальной таблицы Попытка обращения к памяти по такому сегментному регистру вызовет прерывание Прерывание возникнет и при попытке загрузки нулевого селектора в регистр CS или SS, Поле RPL указывает требуемыйуровень привилегийДескрипторы представляют собой 8-байтные структуры данных,используемые для определения свойств программных элементов(сегментов, вентилей и таблиц). Дескриптор определяет положениеэлемента в памяти, размер занимаемой им области (лимит), его назначение и характеристики защиты.

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

Состояние каждой задачи (значение всех связанных с ней регистров процессора) может быть сохранено в специальном сегментесостояния задачи TSS, на который указывает селектор в регистре задачи TR. При переключении задач достаточно загрузить новый селектор в регистр задачи, и состояние текущей задачи автоматическисохранится в ее TSS, а в процессор загрузится состояние новой (возможно, ранее прерванной) задачи, и начнется (продолжится) ее выполнение.Четырехуровневая иерархическая система привилегий (рис.

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6392
Авторов
на СтудИзбе
307
Средний доход
с одного платного файла
Обучение Подробнее