Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОТВЕТЫ ВСЕ.docx
Скачиваний:
31
Добавлен:
16.04.2019
Размер:
1.69 Mб
Скачать

7.7. Использование адресных пространств: изоляция, связь. Динамическая трансляция адреса.

Изоляция адресного пространства

Использование адресных пространств позволяет z/OS обеспечивать разделение между программами и данными, относящимися к отдельным адресным пространствам. Приватные области в адресном пространстве одного пользователя изолированы от приватных областей в других адресных пространствах, что в значительной степени обеспечивает безопасность операционной системы.

Кроме того, каждое адресное пространство содержит общую область, доступную для всех остальных адресных пространств. Так как адресное пространство отображает все доступные адреса, оно включает системный код и данные, а также пользовательский код и данные. Таким образом, не все отображаемые адреса доступны для пользовательского кода и данных.

Возможность совместного использования одних и тех же ресурсов многими пользователями подразумевает необходимость защиты пользователей друг от друга и защиты самой операционной системы. Наряду с такими методами, как использование «ключей» для защиты основной памяти и кодовых слов для защиты файлов данных и программ, отдельные адресные пространства обеспечивают отсутствие наложения пользовательских программ и данных.

Связь адресных пространств

В среде с несколькими виртуальными адресными пространствами приложениям необходимы способы связи адресных пространств; z/OS содержит два метода связи между адресными пространствами:

  • назначение блока запроса обслуживания (SRB) – асинхронный процесс;

  • использование служб межпространственной связи (cross-memory services) и регистров доступа – синхронный процесс.

Программа использует SRB для запуска процесса в другом адресном пространстве или в том же адресном пространстве. SRB по сути является асинхронным и работает независимо от программы, которая его создает, повышая, таким образом, доступность ресурсов в среде мультипроцессирования.

Программа использует службы межпространственной связи для прямого доступа к адресному пространству другого пользователя. Можно сравнить службы межпространственной связи в z/OS с функциями разделяемой памяти (Shared Memory) в UNIX которые можно использовать без специальных полномочий. Однако в отличие от UNIX, службы межпространственной связи в z/OS требуют, чтобы обращающаяся программа имела специальные полномочия, контролируемые средством авторизации программ (Authorized Program Facility, APF). Этот метод позволяет обеспечить эффективный и безопасный доступ к данным, принадлежащим другим пользователям, к данным, принадлежащим пользователю, но для удобства хранящимся в другом адресном пространстве, а также быструю и защищенную связь с такими службами, как менеджеры транзакций и менеджеры баз данных.

Динамическая трансляция адреса

Динамическая трансляция адреса (dynamic address translation, DAT) представляет собой процесс преобразования виртуального адреса при ссылке на участок памяти в соответствующий реальный адрес. Если виртуальный адрес уже ссылается на основную память, процесс динамической трансляции адреса может быть ускорен посредством использования буфера быстрого преобразования адреса (translation lookaside buffer). Если виртуальный адрес не ссылается на основную память, возникает прерывание по отсутствию страницы (page fault interrupt), после чего z/OS извлекает страницу из вспомогательной памяти.

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

Реализация DAT осуществляется как аппаратным, так и программным обеспечением посредством использования таблиц страниц, таблиц сегментов, таблиц регионов и буферов быстрого преобразования адреса. DAT позволяет различным адресным пространствам совместно использовать одну программу или другие данные с доступом только для чтения. Это связано с тем, что виртуальные адреса в разных адресных пространствах могут преобразовываться к одному фрейму основной памяти. В противном случае требовалось бы использовать много копий программы или данных, по одной для каждого адресного пространства.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]