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

В таблице 6.4 приведен список типов сообщений, которые ядро посылает менеджеру памяти.

Таблица 6.4.
Некоторые типы сообщений, посылаемых ядром менеджеру сообщений

ВызовОписание
InitИнициализировать новый отображенный в память объект
Data_requestПередать ядру определенную страницу для обработки страничного отказа
Data_writeВзять страницу из памяти и переписать ее
Data_unlockРазблокирует страницу, так что ядро может ее использовать
Lock_completedЗавершено выполнение предшествующий запрос Lock_request
TerminateИнформирование о том, что данный объект больше не используется

Когда объект отображается в память с использованием вызова Map, то ядро посылает сообщение Init соответствующему менеджеру памяти, чтобы позволить ему инициализировать себя. Это сообщение определяет порты, которые должны будут использоваться позже в диалоге с объектом. Запросы от ядра на получение страницы и поставку страницы осуществляются с помощью вызовов Data_request и Data_write соответственно. Эти сообщения управляют трафиком страниц в обоих направлениях, и поэтому являются наиболее важными вызовами.

Сообщение Data_unlock представляет собой запрос от ядра менеджеру памяти на разблокирование заблокированной страницы, так что ядро может использовать ее для другого процесса. Сообщение Lock_completed оповещает о завершении последовательности Lock_request, и будет рассмотрен ниже. Наконец, сообщение Terminate сообщает менеджеру памяти, что объект, имя которого указано в вызове, больше не используется и может быть удален из памяти. Существуют вызовы, определенные для менеджера памяти "по умолчанию".

Персональный компьютер Novell NetWare специализированная операционная система Сетевые продукты Microsoft OS/2