Из Википедии, свободной энциклопедии
  (Перенаправлено из командного слова канала )
Перейти к навигации Перейти к поиску

В вычислении , канал ввода / вывода является высокая производительность ввода / вывода (I / O) архитектура , которая реализована в различных формах на ряде компьютерных архитектур, особенно на больших ЭВМ . В прошлом, каналы , как правило , [а] реализованы с пользовательскими устройствами, по- разному названный канал , I / O процессор , Контроллер ввода / вывода , I / O синхронизатора , или контроллер DMA .

Обзор [ править ]

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

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

ЦП обычно назначает блок памяти или отправляет каналу относительно небольшую программу для обработки задач ввода-вывода, которые канал и контроллер во многих случаях могут выполнять без дальнейшего вмешательства со стороны ЦП (исключение: эти каналы программы, которые используют «прерывания, управляемые программой», PCI, для облегчения загрузки программ, подкачки по запросу и других важных системных задач).

Когда передача ввода-вывода завершена или обнаружена ошибка, контроллер связывается с ЦП через канал, используя прерывание . Поскольку канал имеет прямой доступ к основной памяти, его также часто называют контроллером прямого доступа к памяти (DMA).

В самых последних реализациях программа канала инициируется, и процессор канала выполняет всю необходимую обработку до любого из условий завершения. Это устраняет большую часть взаимодействия ЦП с каналом и значительно повышает общую производительность системы. Канал может сообщать о нескольких различных типах условий окончания, которые могут быть однозначно нормальными, могут однозначно указывать на ошибку или значение которых может зависеть от контекста и результатов последующей операции считывания. В некоторых системах контроллер ввода-вывода может запрашивать автоматический повтор некоторых операций без вмешательства процессора. В более ранних реализациях любойОшибка, независимо от того, насколько она мала, требовала вмешательства ЦП, и, следовательно, накладные расходы были намного выше. Программно-управляемое прерывание (PCI) по-прежнему поддерживается для некоторых «устаревших» операций, но тенденция состоит в том, чтобы отойти от таких PCI, за исключением случаев, когда это неизбежно.

История [ править ]

Впервые канальный ввод-вывод был использован в мэйнфрейме на электронных лампах IBM 709 [1] , чей синхронизатор данных модели 766 был первым канальным контроллером, в 1957 году. Его транзисторный преемник, IBM 7090 , [2] имел от двух до восьми 6. -битовые каналы (7607) и мультиплексор каналов (7606), который может контролировать до восьми каналов. 7090 и 7094 также могут иметь до восьми 8-битных каналов с 7909.

В то время как IBM использовала команды каналов данных на некоторых своих компьютерах и разрешала объединение команд, например, на 7090, большинство других поставщиков использовали каналы, которые имели дело с отдельными записями. Однако некоторые системы, например серия GE-600 , имели более сложные архитектуры ввода-вывода.

Позже для более крупных компьютеров IBM System / 360 и даже для ранних моделей System / 370 каналы селектора и каналы мультиплексора все еще были громоздкими и дорогими отдельными процессорами, такими как канал IBM 2860 Selector (от одного до трех каналов селектора в одном блок), канал мультиплексора IBM 2870 Byte (один канал мультиплексора и, необязательно, один подканал селектора в одном блоке) и канал блочного мультиплексора IBM 2880 (один или два канала блочного мультиплексора в одном блоке).

Аппаратная реализация каналов, совместимых с System / 370, корпорацией Amdahl была совершенно иной. Один внутренний блок, называемый «C-Unit», поддерживал до шестнадцати каналов, используя одно и то же оборудование для всех поддерживаемых каналов. Возможны два внутренних блока C, поддерживающих до 32 каналов. Каждый «C-Unit» независимо выполнял процесс, обычно называемый «процессором смещения состояния канала» (тип цилиндрического процессора ), который реализовал специализированный конечный автомат (FSM). Каждый цикл ЦП, каждые 32 наносекунды в 470 / V6 и / V5 и каждые 26 наносекунд в 470 / V7 и / V8, «модуль C» считывает полное состояние следующего канала в последовательности приоритетов и его канала ввода-вывода. в тегах. Были выполнены необходимые действия, определенные последним состоянием этого канала и его входящими тегами : данные были прочитаны или записаны в оперативную память, программа операционной системы была прервана, если такое прерывание было указано флагом Program Control Interrupt программы канала, и " C-Unit "наконец сохранил следующее состояние этого канала и установил его выходные теги канала ввода / вывода., а затем перешел к следующему каналу с более низким приоритетом. В некоторых случаях упреждение было возможно. В «C-модуле» было обеспечено достаточное хранилище FIFO для всех каналов, которые эмулировались этим автоматом. Каналы можно легко перенастроить в соответствии с выбором заказчика: эмуляция IBM 2860 (селектор), IBM 2870 (байтовый мультиплексор) или IBM 2880 (блочный мультиплексор) без каких-либо значительных ограничений с помощью команд консоли обслуживания. Также поддерживался «двухбайтовый интерфейс», «вход / выход данных» и другие высокопроизводительные параметры канала IBM. Встроенные межканальные адаптерытакже предлагались, называемые CCA на языке Amdahl, но называемые CTC на языке IBM. По-настоящему изменил правила игры, и это вынудило IBM переработать свои мэйнфреймы, чтобы обеспечить аналогичные возможности и гибкость каналов. Первоначальный ответ IBM заключался в том, чтобы включить урезанные модели 158, работающие только в «канальном режиме», в качестве канальных модулей модели 303x. В «C-модуле» Amdahl любой канал может быть любого типа, 2860, 2870 или 2880, без резервирования каналов 0 и 4 для 2870, как в некоторых моделях IBM.

Для компьютеров IBM меньшего размера, моделей System / 360 моделей 50 и ниже и System / 370 моделей 158 и ниже, каналы были реализованы в микрокоде ЦП , а сам ЦП работал в одном из двух режимов: «Режим ЦП» или «Режим канала». ", причем режим канала" блокировал "режим ЦП (каналы IBM 2860, 2870 и 2880, а также каналы Amdahl были" неблокирующими ").

Намного позже каналы были реализованы в виде встроенного процессора, находящегося в том же корпусе, что и ЦП, обычно называемого «канальным процессором», и который обычно был процессором RISC , но мог быть микропроцессором System / 390 с специальный микрокод, как в мэйнфреймах IBM CMOS .

Некоторые из первых коммерческих канальных систем сторонних производителей были на UNIVAC 490 , CDC 1604 , Burroughs B5000 , UNIVAC 1107 и GE 635 . С тех пор контроллеры каналов стали стандартной частью большинства конструкций мэйнфреймов, и у мэйнфреймов есть основное преимущество перед меньшими, более быстрыми персональными компьютерами и сетевыми вычислениями.

Суперкомпьютер CDC 6600 1965 года использовал для этой роли 10 логически независимых компьютеров, называемых периферийными процессорами (PP), и 12 простых каналов ввода-вывода. PP были современной версией первых персональных компьютеров CDC , CDC 160 и 160A. Изначально операционная система находилась и выполнялась в PP0.

Контроллеры каналов также были сделаны в виде однокристальных конструкций с несколькими каналами на них, например, используемых в компьютерах NeXT . Однако с быстрым увеличением скорости современных компьютеров в сочетании с операционными системами, которые не «блокируют» при ожидании данных, контроллеры каналов, соответственно, стали менее эффективными и обычно не встречаются на небольших машинах.

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

Описание [ править ]

Эталонная реализация канального ввода-вывода принадлежит семейству мэйнфреймов IBM System / 360 и его преемникам, но аналогичные реализации были приняты другими поставщиками мэйнфреймов, такими как Control Data , Bull ( General Electric / Honeywell ) и Unisys .

Компьютерные системы, использующие канальный ввод-вывод, имеют специальные аппаратные компоненты, которые полностью обрабатывают все операции ввода-вывода независимо от ЦП системы. ЦП системы, использующей канальный ввод-вывод, обычно имеет только одну машинную инструкцию в своем репертуаре для ввода и вывода; эта инструкция используется для передачи команд ввода / вывода специализированному оборудованию ввода / вывода в форме программ канала . После этого ввод-вывод выполняется без вмешательства со стороны ЦП до тех пор, пока не произойдет событие, требующее уведомления операционной системы, после чего аппаратные средства ввода-вывода сигнализируют о прерывании ЦП.

Канал - это независимый аппаратный компонент, который координирует все операции ввода-вывода с набором контроллеров или устройств. Несмотря на название, это не просто средство общения; это программируемое устройство, которое обрабатывает все детали ввода / вывода после получения списка операций ввода / вывода, которые необходимо выполнить (программа канала).

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

Можно разрабатывать очень сложные программы каналов, включая тестирование данных и условное ветвление в рамках этой программы каналов. Эта гибкость освобождает ЦП от накладных расходов на запуск, мониторинг и управление отдельными операциями ввода-вывода. Специализированное оборудование каналов, в свою очередь, предназначено для ввода-вывода и может выполнять его более эффективно, чем ЦП (и полностью параллельно с ЦП). Канальный ввод-вывод мало чем отличается от прямого доступа к памяти (DMA) микрокомпьютеров, только более сложный и продвинутый.

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

В терминологии IBM ESA / 390 канал - это параллельное соединение данных внутри древовидной или иерархически организованной подсистемы ввода-вывода. В отсеках ввода-вывода System / 390 каналы либо напрямую подключаются к устройствам, установленным внутри отсека (коммуникационный адаптер, такой как ESCON , FICON , адаптер открытых систем ), либо они проходят за пределами отсека под фальшполом в виде кабелей толщиной большого пальца и напрямую подключайтесь к интерфейсам каналов на более крупных устройствах, таких как ленточные подсистемы, устройства хранения с прямым доступом (DASD), терминальные концентраторы и другие системы ESA / 390.

Типы каналов [ править ]

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

Программа канала [ править ]

Программа каналапредставляет собой последовательность командных слов канала (CCW), которые выполняются подсистемой канала ввода-вывода в IBM System / 360 и последующих архитектурах. Канальная программа состоит из одного или нескольких командных слов канала. Операционная система сигнализирует подсистеме канала ввода-вывода, чтобы начать выполнение программы канала, с помощью инструкции SSCH (запуск подканала). После этого центральный процессор может продолжить выполнение инструкций, не связанных с вводом-выводом, до прерывания. Когда операции канала завершены, канал прерывает центральный процессор прерыванием ввода-вывода. В более ранних моделях линейки мэйнфреймов IBM модуль канала был идентифицируемым компонентом, по одному на каждый канал. В современных мэйнфреймах каналы реализованы с помощью независимого RISC-процессора, процессора каналов, одного на все каналы. Расширенная архитектура IBM System / 370[3] и его преемники заменили более ранниемашинные инструкцииSIO ( запуск ввода-вывода ) и SIOF ( запуск быстрого выпуска ввода-вывода ) (System / 360 и ранние System / 370) на инструкцию SSCH ( запуск подканала ) (ESA / 370 и последующие).

Канальный ввод / вывод обеспечивает значительную экономию на вводе / выводе. Например, в Linux от IBM на IBM Z для форматирования всей дорожки DASD требуется только одна канальная программа (и, следовательно, только одна инструкция ввода-вывода), но несколько командных слов канала (по одному на блок). Программа выполняется выделенным процессором ввода-вывода, в то время как процессор приложений (ЦП) свободен для другой работы.

Командные слова канала [ править ]

Команда слово канала ( CCW ) является инструкцией к специализированным I / O процессор канала , который, по сути, конечный автомат. Он используется для инициирования операции ввода-вывода, такой как «чтение», «запись» или «определение», на устройстве, подключенном к каналу. В системных архитектурах, реализующих канальный ввод-вывод, обычно все устройства соединены по каналам, поэтому для всех операций ввода-вывода требуется использование CCW.

CCW организованы в канальные программы операционной системой и подпрограммой ввода-вывода, служебной программой или автономным программным обеспечением (например, тестовыми и диагностическими программами). Ограниченная возможность «разветвления», следовательно, возможность динамического программирования, доступна в таких программах канала за счет использования флага канала «модификатор состояния» и CCW «передача в канале».

Цепочка [ править ]

IBM системы водяного охлаждение оборудование является приковано , чтобы сформировать программу канала. Биты в CCW указывают, что следующее место в памяти содержит CCW, который является частью той же программы канала. Канальная программа обычно выполняет последовательные CCW до тех пор, пока не произойдет исключение, CCW передачи в канале (TIC) или CCW не будет выполнено без указания цепочки. Цепочка команд сообщает каналу, что следующая против часовой стрелки содержит новую команду. Объединение данных в цепочку указывает, что следующий CCW содержит адрес дополнительных данных для той же команды, что позволяет, например, записывать или считывать части одной записи из нескольких областей данных в хранилище (запись со сборкой и чтение с разбросом). [4]

Самомодифицирующиеся программы каналов [ править ]

Канальные программы могут изменять свои собственные операции во время выполнения на основе считанных данных. Например, самомодификация широко используется в OS / 360 ISAM . [5]

Пример программы канала [ править ]

В следующем примере [6] выполняется чтение дисковой записи, идентифицированной записанным ключом . Дорожка, содержащая запись и желаемое значение ключа, известна. Блок управления устройством будет искать трек, чтобы найти запрошенную запись. В этом примере <> указывают, что программа канала содержит адрес хранения указанного поля.

 SEEK <номер цилиндра / головки> SEARCH KEY EQUAL <ключевое значение> TIC * -8 Вернуться к поиску, если не равно ЧИТАТЬ ДАННЫЕ <буфер> 

TIC (передача в канале) заставит программу канала переходить к команде SEARCH до тех пор, пока не встретится запись с совпадающим ключом (или конец дорожки). Когда будет найдена запись с совпадающим ключом, контроллер DASD включит модификатор состояния в статус канала, заставляя канал пропускать TIC CCW; таким образом, программа канала не будет разветвляться, и канал выполнит команду READ.

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

 SEEK <номер цилиндра / головки> SEARCH KEY HIGH OR EQUAL <ключевое значение> TIC * -8 Вернуться к поиску, если не высокий или равный ЧИТАТЬ ДАННЫЕ <буфер> 

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

Канальные программы в виртуальных системах хранения [ править ]

В большинстве систем каналы работают с использованием реальных (или физических) адресов , в то время как программы каналов построены с использованием виртуальных адресов . [7] Операционная система отвечает за перевод этих программ каналов перед их выполнением, и для этой конкретной цели диспетчер ввода / вывода (IOS) имеет специальную функцию «быстрого исправления», которая была встроена в диспетчер ОС только для этих «исправлений». «которые имеют относительно короткую продолжительность (т. е. значительно короче, чем« время настенных часов »). Страницы, содержащие данные, которые будут использоваться операцией ввода-вывода, блокируются в реальной памяти или страница фиксируется. Программа канала копируется, и все виртуальные адреса заменяются реальными адресами перед запуском операции ввода-вывода. После завершения операции страницы становятся незафиксированными.

Поскольку исправление и открепление страниц является дорогостоящим для ЦП процессом, иногда для снижения затрат на ЦП используется долгосрочное исправление страниц. Здесь виртуальная память фиксируется по страницам в течение всего срока службы приложения, а не фиксируется и освобождается при каждой операции ввода-вывода. Примером программы, которая может использовать долгосрочное исправление страниц, является DB2 .

Альтернативой долгосрочному исправлению страниц является перемещение всего приложения, включая все его буферы данных, в предпочтительную область основного хранилища. Это достигается за счет специальной SYSEVENT в MVS / 370 через Z / OS операционных систем, в котором приложение является, во- первых, swapped- из оттуда , где он может быть, предположительно , из не-предпочтительной области, чтобы подкачки и страницы внешнего запоминающего устройства, а также это, во- вторых, swapped- в к предпочтительной области (SYSEVENT TRANSWAP). После этого приложение может быть помечено как не подлежащее замене.другим специальным SYSEVENT (SYSEVENT DONTSWAP). Каждый раз, когда такое приложение завершается, нормально или ненормально, операционная система неявно выдает еще один специальный SYSEVENT от имени приложения, если это еще не было сделано (SYSEVENT OKSWAP).

Загрузка с канальным вводом-выводом [ править ]

Даже самонастройки системы или Initial Program Load (IPL) в IBM номенклатурой, осуществляется по каналам, хотя этот процесс частично имитируется CPU (через подразумеваемой / O (SIO) инструкции Start I подразумеваемое Channel Address Word , (CAW) в ячейке 0 и подразумеваемое командное слово канала (CCW) с кодом операции Read IPL, также в ячейке 0. Предполагается цепочка команд, поэтому подразумеваемая CCW в ячейке 0 переходит в продолжение программы канала в местоположениях 8 и 16, и, возможно, в другом месте, если одна из этих CCW будет канальной передачей (TIC). [8]

Для загрузки системы подразумеваемая Чтение IPL CCW считывает первый блок выбранного IPL-устройства в 24-байтовую область данных в местоположении 0, канал продолжается вторым и третьим двойными словами, которые являются CCW, и эта программа канала загружает первая часть программного обеспечения системы загружается в другое место в оперативной памяти. Первое двойное слово содержит PSW, который при получении в конце IPL заставляет ЦП выполнять текст IPL (загрузчик начальной загрузки), считанный CCW в местоположении 8. Затем текст IPL определяет местонахождение, загружает и передает управление на ядро операционной системы. Nucleus выполняет или инициирует любую необходимую инициализацию, а затем начинает обычные операции ОС.

Эта концепция IPL не зависит от устройства. Он может выполнять IPL-запись с колоды карт, с магнитной ленты или с устройства хранения с прямым доступом (DASD), например диска, барабана. Команда чтения IPL (X'02 '), которая моделируется ЦП, представляет собой команду чтения чтения EBCDIC Select Stacker 1 на устройстве чтения карт и команду чтения на ленточном носителе (которые по своей природе являются последовательным доступом), но специальная команда Read-IPL на DASD.

Контроллеры DASD принимают команду X'02 ', ищут цилиндр X'0000' head X'0000 ', переходят к индексной точке (т. Е. Сразу за записью дескриптора дорожки (R0)), а затем обрабатывают команду Read IPL, как если бы это была команда чтения данных (X'06 '). Без этого особого поведения контроллера DASD независимая от устройства IPL была бы невозможна. На DASD текст IPL содержится в цилиндре X'0000 ', треке X'0000' и записи X'01 '(24 байта), и цилиндре X'0000', треке X'0000 'и записи X' 02 '(довольно большой, конечно, несколько больше 3000 байт). Метка тома всегда содержится в цилиндре X'0000 ', дорожке X'0000' и блоке X'03 '(80 байт). Метка тома всегда указывает на VTOC с указателем в форме HHHH (то естьVTOC должен находиться в пределах первых 65 536 треков). Формат 4 DSCB VTOC определяет экстент (размер) VTOC, поэтому для метки тома нужен только указатель на первую дорожку в экстенте VTOC, а поскольку DSCB формата 4, который описывает VTOC, всегда является самым первым DSCB в VTOC, HHHH также указывает на формат 4 DSCB.

При попытке выполнить IPL с устройства, которое не было инициализировано с помощью текста IPL, система просто переходит в состояние ожидания. Программа инициализации DASD (устройство хранения с прямым доступом), IBCDASDI, или приложение инициализации DASD, ICKDSF, помещает состояние ожидания PSW и фиктивную строку CCW в 24 байта, если устройство предназначено только для данных, а не для IPL, после Эти программы форматируют VTOC и выполняют другие функции инициализации жесткого диска.

См. Также [ править ]

  • Автономная периферийная работа
  • Загрузка
  • Выполнить программу канала
  • GEC 4000 серии
  • GCOS (операционная система)
  • I2O
  • IBM System z9
  • IBM System z10
  • Начальная загрузка программы
  • Intel 8089
  • Система / 360
  • UNIVAC 1110
  • z / Архитектура

Ссылки [ править ]

  1. ^ «Архивы IBM: система обработки данных 709» . 03.ibm.com . Проверено 22 января 2014 .
  2. ^ «Архивы IBM: система обработки данных 7090 (продолжение)» . 03.ibm.com. 1958-12-30 . Проверено 22 января 2014 .
  3. ^ Принципы работы расширенной архитектуры IBM System / 370, SA22-7085-0
  4. ^ Корпорация IBM (1968). Текст для учащихся: Введение в архитектуру IBM System / 360 (PDF) . Корпорация IBM. п. 22.
  5. ^ Attanasio, CR; Markstein, PW; Филлипс, Р.Дж. (1976). «Проникновение в операционную систему: исследование целостности VM / 370». IBM Systems Journal . 15 (1): 102–116. DOI : 10.1147 / sj.151.0102 .
  6. ^ Корпорация IBM (1969). Описание компонентов IBM System / 360: средство хранения с прямым доступом 2314 и средство управления вспомогательной памятью 2844 (PDF) . Корпорация IBM. п. 50.2. Архивировано из оригинального (PDF) 22 марта 2011 года.
  7. ^ Корпорация IBM (1978). Обзор OS / VS2 MVS (PDF) . С. 8–12. Архивировано из оригинального (PDF) 16 марта 2011 года.
  8. ^ См. Принципы работы System / 370, GA22–7000–4, стр. 54–55, Начальная загрузка программы; Расширенная архитектура System / 370 очень похожа, хотя XA использует «подразумеваемый» начальный субканал (SSCH) вместо «подразумеваемого» начального ввода-вывода.

Заметки [ править ]

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

Внешние ссылки [ править ]

  • Принципы работы IBM System / 370 (GA22-7000-4), см. Главу, посвященную операциям ввода / вывода