IOM станции использует для данного соединения описание котроллера CTLD, в MI — CD. CD — это конфигурационный объект, содержащий информацию об удаленной системе (ее адрес, имя порта управления APPN и другие необходимые параметры). Руководствуясь информацией из CD, IOM станции добавляет к запросу ввода-вывода команды или необходимую управляющую информацию, а затем IOM станции посылает запрос ввода-вывода в очередь IOM линии.
IOM линии реализует протоколы канала. Он обеспечивает для IOM станции прозрачный интерфейс, не зависящий от нижележащего канального протокола и используемой сети. В нашем примере мы собираемся воспользоваться протоколом SDLC (synchronous data link communications).
IOM линии управляет передачей данных и определяет физические подключения к линии. Для этого он использует описание линии LIND, которому в MI соответствует описание сети ND, а для линии SDLC добавляет к запросу необходимые управляющие символы. IOM линии также обеспечивает интерфейс между верхними слоями коммуникационного протокола и аппаратным соединением.
Далее запрос передается средству связи между процессами IPCF, расположенному в SLIC. IPCF используется для всех устройств; оно взаимодействует с аппаратурой ввода-вывода для отправки запроса IOP на плате адаптера по шине SPD. С помощью LUD (DEVD указан в SSR) IPCF определяет, что в нашем примере используется модем, подсоединенный к плате адаптера, а та, в свою очередь, — к физической линии связи. Вскоре мы поговорим, как именно выполняется передача; но сначала нужно рассмотреть блоки управления вводом-выводом, позволяющие SLIC работать с аппаратурой.
Блоки управления ввода-вывода и связи между ними показаны на рисунке 10.3. Блоки содержат всю информацию, необходимую IPCF для поиска устройства. Эта информация в виде таблиц находится в памяти, где она доступна как аппаратуре, так и ПО, и обновляется во время загрузки системы, когда назначаются адреса IOBU. Обратите внимание, что стрелки на рисунке 10.3 соответствуют адресам, тогда как на рисунке 10.2 — передачам управления.
CAT

Рисунок 10.3. Блок управления вводом-выводом
Кроме того, на рисунке 10.3 показаны семь блоков управления. Давайте рассмотрим их подробней [ 79 ] Учтите, что приведенная в списке информация специфична для устройств, подключенных к шине SPD. Впрочем, реализация для PCI концептуально мало чем отличается от описанной.
.
1. Управляющая адресная таблица (CAT) — эта общесистемная таблица, в которой содержатся адреса основных блоков управления, используемых SLIC.
Очередь свободных сообщений (AMQ) — это очередь незаполненных сообщений, на которую указывает один из адресов в CAT. Сообщения из этой очереди могут использоваться различными компонентами SLIC, включая IPCF.
Таблица управления шиной (BCT) содержит буферы, SRQ и указатели на другие блоки управления. На каждую шину SPD приходится по одной BCT.
Блок устройства шины (BUB) содержит информацию о различных подключенных к шине устройствах. На каждую шину SPD приходится по одному BUB. Здесь размещается очередь сообщений ввода-вывода, ожидающих завершения операции.
Обратите внимание, что этот BUB не то же самое, что BUB (Bring Up Bind), о котором говорилось в главе 3. Тот BUB использовался для оценки прогресса в разработке SLIC, и, возможно, мне не следовало его упоминать, чтобы не путать читателей.
Удаленный CCB ( или удаленный CGCB) — имеется по одному для каждой шины SPD в системе, а также для каждого идентификатора подключения, назначенного IOBU. Этот управляющий блок хранит для удаленных (находящихся вне процессора) IOBU идентификаторы устройств, состояния и адресов IOBU. Некоторые IOBU могут поддерживать несколько устройств и, соответственно, иметь несколько идентификаторов подключения.
Локальный CCB (или локальный CGCB) — один из этих блоков также имеется для каждой шины SPD в системе. Они очень похожи на удаленные блоки, но содержат информацию об IOBU, подключенных локально (внутри процессора).
7.Блок управления подключениями (CCB) — один для всей системы. Он содержит
идентификаторы подключений и маршруты для всех шин SPD, а также обеспечивает доступ к информации подключений для каждой отдельной шины.

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