Cтраница 2
Часть программного обеспечения этого интерфейса находится в памяти системы 1432, а часть ( большая) расположена в памяти периферийной подсистемы. [16]
Такая пересылка также может быть выполнена с помощью коммуникации сообщений аналогично механизму, использующемуся в подсистеме i432, но работающему внутри периферийной подсистемы. [17]
![]() |
Иллюстрация родовой операции записи ( Write на терминал. [18] |
На рис. 7.7 иллюстрируется возможная взаимосвязь между различными пользовательскими процессами, пакетом File Manager, интерфейсными пакетами, интерфейсом с периферийной подсистемой и процессом АР File Server, использующимся для управления реальным дисковым устройством. [19]
Наше вводное рассмотрение системы ввода-вывода показывает, как ( центральная) подсистема 1432 отгорожена логически и физически при помощи интерфейса с периферийной подсистемой от детальной структуры и операций драйверов устройств. Это позволяет видеть со стороны i432 данного интерфейса функциональные возможности ввода-вывода, скрывая в то же время находящиеся за перегородкой подробности реализации ввода-вывода. Интерфейс ввода-вывода в системе iMAX углубляет это разделение. Его использование позволяет программисту видеть конкретные устройства ввода-вывода, реальные или моделируемые, с нескольких различных точек зрения: начиная от самого общего и, стало быть, наименее зависящего от устройства до полностью конкретного. [20]
В файле Перемещения хранятся сведения о продвижении индивидов по службе, переходах из эшелона в эшелон, территориальных перемещениях, если для организационной системы характерна постоянная миграция индивидов между центральной и периферийными подсистемами и др. В файле особо выделяется информация о перемещениях индивида внутри организационной системы, так как они отражают ту кадровую политику, которая проводится руководством системы. [21]
Синхронный интерфейс, предоставляемый iMAX, реализован с буферизацией ввода-вывода; это обеспечивает в типичном случае то, что возврат управления после вызова операций Read или Write для реального устройства ввода-вывода произойдет без ожидания, пока созданное сообщение с запросом ввода-вывода совершит полный цикл прохождения через интерфейс с периферийной подсистемой и обратно. Для понимания этого факта полезна модель, показанная на рис. 7.4 и применимая для ввода или вывода. [22]
В этом случае пакету Stock Mkt Info необходимо иметь доступ к абстракции интерфейса устройства Source с операцией чтения. Соответствующий драйвер устройства периферийной подсистемы теперь взаимодействует с системой передачи данных. Если мы предположим, что АР или какой-либо другой процессор на шине той же периферийной подсистемы является главной машиной сети, то драйвер только посылает и получает сообщения через программу главной машины сети. [23]
Может возникнуть следующий вопрос. Когда новое устройство добавляется к периферийной подсистеме или соответственно когда новый объект синхронного интерфейса вводится в вычислительную подсистему, как информация об этом доходит до остальных подсистем, которым необходимо знать об этих изменениях. [24]
Будет достаточно обсудить подробно единственный пример. Каждый такой запрос на печать передается через интерфейс с периферийной подсистемой ( PSI) процессу, который исполняется на процессоре периферийной подсистемы. На рис. 7.4 показан общий вид ситуации, а на рис. 7.5 - более подробная схема. Далее мы используем соответственно термины задача и процесс для того, чтобы различать программные единицы - задачи языка Ада, исполняющиеся в объектном пространстве 1432, и программные единицы не языка Ада - процессы, исполняющиеся в адресном пространстве периферийной подсистемы. [25]
Основная структура данных, принадлежащая к любому интерфейсу устройства - это справочная запись; ее представление - query record rep - определяется в пакете IO Definitions, приведенном в начале приложения К. Несколько полей данного комбинированного типа используется для идентификации устройства и периферийной подсистемы, к которой в настоящее время подсоединено устройство. Запись содержит также массив абстрактных описаний - список допустимых представлений, которые поддерживаются этим интерфейсом устройства, и тех представлений, к которым ( из которых) интерфейс может быть преобразован. [26]
Главная цель изучения данной главы - это понять, как вычислительная подсистема выполняет операции ввода-вывода. Необходимая промежуточная цель - понять, по крайней мере в абстрактном смысле, архитектуру периферийной подсистемы и то, как она функционирует во взаимодействии с вычислительной подсистемой. Поскольку отдельные периферийные подсистемы логически взаимно независимы, достаточно предположить наличие только одной из них - так мы и сделаем в носЛедущем рассмотрении. Окончательная цель-узнать, как пользователь системы 1432 может воспользоваться программным интерфейсом операционной системы для программирования операций ввода-вывода. Поскольку операции ввода-вывода работают в рамках межпроцессной коммуникации, то непосредственно применимы механизмы, описанные в гл. [27]
Будет достаточно обсудить подробно единственный пример. Каждый такой запрос на печать передается через интерфейс с периферийной подсистемой ( PSI) процессу, который исполняется на процессоре периферийной подсистемы. На рис. 7.4 показан общий вид ситуации, а на рис. 7.5 - более подробная схема. Далее мы используем соответственно термины задача и процесс для того, чтобы различать программные единицы - задачи языка Ада, исполняющиеся в объектном пространстве 1432, и программные единицы не языка Ада - процессы, исполняющиеся в адресном пространстве периферийной подсистемы. [28]
Как другой крайний случай, намного более простая периферийная подсистема может состоять лишь из одного процессора - АР и не иметь мультизадачной операционной системы. В этом случае тот процесс АР, который контролирует процессор IP, управляет также и работой всех устройств ввода-вывода в данной периферийной подсистеме. [29]
Основанная на объектах структура ввода-вывода системы 1432 позволяет исключить программу IOCP и большинство, если не все, ее функций. Упомянутая ранее общесистемная таблица подсоединений в системе 1432 без риска для безопасности распределена между отдельно защищаемыми объектами интерфейсов устройств ( в виде внутренних записей device description) и таблицами, находящимися в различных периферийных подсистемах. [30]