Читаем Основы AS/400 полностью

Разряд пользовательского состояния (MSRUS) поддерживает уровни защиты AS/ 400 от 40 и выше. Он позволяет различать системное и пользовательское состояние процесса. Разряд пользовательского состояния определяет, могут ли полномочия быть помещены в указатель, и может ли процесс выполнять привилегированные команды MI. Данный разряд используется также для защиты памяти. Обратите внимание, что разряд пользовательского состояния также задействован только в режиме активных тегов.

Обзор трансляции адреса

На рисунке 8.3 показана трансляция адреса PowerPC в режиме активных тегов. Аппаратура определяет, является ли 64-разрядный адрес, используемый программой, транслируемым адресом, адресом E = R или адресом E = DS. Для классификации используются старшие 12 разрядов (3 шестнадцатиричные цифры) эффективного адреса. Если эти три старшие цифры равны 800, то это адрес E = R. Некоторые компоненты SLIC, которым нужен доступ ко всем частям памяти, работают с реальными адресами, как и большая часть кода управления памятью. Часть пространства эффективных адресов зарезервирована для адресов E = R. Не случайно именно 252 этих адресов (64 разряда — 12 старших разрядов для 800 = 252) соответствуют диапазону реальных адресов.

Рисунок 8.3. Трансляция адреса в режиме активных тегов


Когда аппаратура обнаруживает адрес E=R, она проверяет разряд проблемного состояния, чтобы определить, может ли процесс, сгенерировавший такой адрес, выполнять привилегированные команды: PowerPC (MSRPR = 0). Если это так, то остальные 52 разряда адреса E=R передаются непосредственно основной памяти как реальный адрес. Если MSRPR = 1, то в зависимости от версии процессора, он будет либо генерировать прерывание, либо рассматривать адрес как транслируемый — разные процессоры PowerPC реагируют по-разному. Если использование адреса E=R допустимо, то накладных расходов при трансляции адреса не возникает. Мы любим говорить, что число 800 — ключ, открывающий бесплатный доступ к памяти.

Для доступа к пространству ввода-вывода, которое мы кратко обсудили в главе 2, в архитектуре PowerPC используется диапазон адресов, называемых адресами прямого сохранения. Это внешнее адресное пространство, которое для процессора выглядит как часть памяти. На самом деле, оно, конечно, таковым не является; эти адреса используются для обозначения подключенных к системе устройств ввода-вывода.

Обычно, устройства в любой системе подключены к шине ввода-вывода. В главе 10 мы расскажем, что устройства AS/400 подключены к процессорам ввода-вывода, которые, в свою очередь, подключены к шинам ввода-вывода. Таким образом, адрес прямого сохранения используется в AS/400 для идентификации как шины ввода-вывода, так и подключенного к ней процессора ввода-вывода.

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

Если старшие три шестнадцатиричные цифры эффективного адреса равны 801, то это адрес E = DS. Обнаружив этот адрес, аппаратура проверяет разряд проблемного состояния, чтобы определить, может ли процесс, сгенерировавший адрес, выполнять привилегированные команды PowerPC (MSRPR= 0). Если это так, то остальные 52 разряда адреса E = DS передаются непосредственно пространству ввода-вывода. Как и адреса E = R, адреса E = DS имеют 228 эффективных сегмента. Если MSRPR = 1, то в зависимости от версии процессора, он будет либо генерировать прерывание, либо рассматривать адрес как транслируемый.

Если три старшие шестнадцатиричные цифры не равны ни 800, ни 801, то это транслируемый адрес. Так как система находится в режиме активных тегов, то эффективный адрес является виртуальным. Для трансляции виртуального адреса в реальный используется таблица страниц.

Рисунок 8.4. Этапы трансляции адреса (режим активных тегов)


На рисунке 8.4 представлены этапы трансляции адреса в режиме активных тегов. Старшие 40 разрядов эффективного адреса называются идентификатором эффективного сегмента (ESID), а младшие 24 — смещением. Как показано на рисунке, смещение подразделяется на страничное и байтовое. Каждое из полей смещения имеет длину 12 разрядов. Страничное смещение задает страницу сегмента, а байтовое — байт страницы.

Перейти на страницу:

Похожие книги

Архитектура операционной системы UNIX (ЛП)
Архитектура операционной системы UNIX (ЛП)

Настоящая книга посвящена описанию внутренних алгоритмов и структур, составляющих основу операционной системы (т. н. «ядро»), и объяснению их взаимосвязи с программным интерфейсом. Таким образом, она будет полезна для работающих в различных операционных средах. При работе с книгой было бы гораздо полезнее обращаться непосредственно к исходному тексту системных программ, но книгу можно читать и независимо от него.  Во-вторых, эта книга может служить в качестве справочного руководства для системных программистов, из которого последние могли бы лучше уяснить себе механизм работы ядра операционной системы и сравнить между собой алгоритмы, используемые в UNIX, и алгоритмы, используемые в других операционных системах. Наконец, программисты, работающие в среде UNIX, могут углубить свое понимание механизма взаимодействия программ с операционной системой и посредством этого прийти к написанию более эффективных и совершенных программ.

Морис Дж Бах , Морис Дж. Бах

ОС и Сети, интернет / ОС и Сети / Книги по IT
Как раскрутить и разрекламировать Web-сайт в сети Интернет
Как раскрутить и разрекламировать Web-сайт в сети Интернет

Настоящая книга заинтересует всех, кто столкнулся с вопросами подготовки, размещения в Сети и популяризации Internet ресурсов различного уровня: от домашней странички до корпоративного сайта. В ней вы найдете все, что необходимо для оптимизации Web сайтов под поисковые системы: приемы написания Web-страниц, описание множества самых популярных специализированных программ, предназначенных для подготовки сайта и его раскрутки, создания удачного HTML-кода страниц с правильными метаданными.Книга является практическим руководством для разработчиков Web сайтов и всех, занимающихся их продвижением. Автор приводит множество советов, касающихся создания и анонсирования Web страниц. Рассмотрены средства автоматизации для повышения эффективности разработки и маркетинга при создании и обслуживании сайта. Описание программных и сетевых средств, автоматизирующих процессы тестирования и отладки сайта, обеспечивающих проверку работоспособности и корректности гиперссылок, синтаксиса HTML кода и грамматики размещенного на странице текста, занимает центральное место в книге. Подробно излагаются возможности таких программ, как Linkbot Developer Edition, Domain NameChecker, Retrieve, CyberSpyder Link Test, HTML Link Validator, CSE HTML Validator, A Real Validator, MetaTag ToolKit, MetaMan, WebQA.Отдельная глава посвящена регистрации Web ресурсов в поисковых системах и каталогах. Описываются программы автоматической регистрации (WebPosition, Page Promoter, Web Регистратор), способы взаимодействия с индексирующими роботами поисковых машин, правила применения метаданных. Рассматриваются приемы и методы рекламы сайтов в Internet, указаны критерии ее эффективности.Издание рассчитано на широкий круг читателей и будет полезно как начинающим создателям Web сайтов, так и профессионалам, которые хотят научиться более качественно продвигать в Сети свой Web продукт.

Александр Петрович Загуменнов

ОС и Сети, интернет