Cтраница 3
![]() |
Некоторые из полей типичной таблицы cdevsw. [31] |
Ввод-вывод в операционной системе UNIX реализуется набором драйверов устройств, по одному для каждого типа устройств. Функция драйвера заключается в изолировании остальной части системы от индивидуальных отличительных особенностей аппаратного обеспечения. При помощи стандартных интерфейсов между драйверами и остальной операционной системой большая часть системы ввода-вывода может быть помещена в машинно-независимую часть ядра. [32]
Ввод-вывод осуществляется драйверами устройств, согласующимися с моделью Windows Driver Model. При запуске каждого драйвера инициализируется объект драйвера, содержащий адреса процедур, к которым может обращаться операционная система, чтобы добавить новое устройство или выполнить операцию ввода-вывода. Драйверы могут собираться в стеки или действовать как фильтры. [33]
Ввод-вывод и файловую систему можно отложить на потом, реализовав поначалу лишь примитивный ввод с клавиатуры и вывод на экран для тестирования и отладки. В некоторых случаях следует защитить ключевые низкоуровневые структуры данных, разрешив доступ к ним только с помощью специальных процедур доступа - в результате мы получаем объектно-ориентированное программирование, независимо от того, какой язык программирования применяется в действительности. Когда нижние уровни созданы, они могут быть тщательно протестированы. Таким образом, система создается снизу вверх, подобно тому, как строятся высокие здания. [34]
Ввод-вывод по прерыванию происходит тогда, когда внешнему устройству разрешено останавливать выполнение центральным процессором текущих программ и передавать управление специальным служебным подпрограммам. Эти подпрограммы должны после вызова сохранить в памяти содержимое рабочих регистров, регистра состояния и счетчика команд, с тем чтобы при возврате управления основной программе не произошло никаких изменений и выполнение прерванной программы могло быть продолжено. [35]
Ввод-вывод: операторы ввода-вывода должны быть просты, но в то же время достаточно мощны для обеспечения удобного ввода-вывода. [36]
Ввод-вывод через порты МПС осуществляется специальными командами микропроцессора: IN ADDR и OUT ADDR, где ADDR - адрес внешнего устройства. Так как адрес внешнего устройства указывается в одном байте, микропроцессор может обмениваться информацией не более чем с 256 внешними устройствами. [37]
Ввод-вывод, ориентированный на запись. При вводе-выводе, ориентированном на запись, каждый файл рассматривается как последовательность записей. [38]
Ввод-вывод обременяет центральный процессор во-первых, управлением подсистемой ввода-вывода и, во-вторых, конфликтами в памяти. Минимальное Бремя, какое центральный процессор можеч иисьншть управлению вводом-выводом на однопроцессорной системе, равно времени для. Малые системы требуют для поддержки ввода-вывода больше времени центрального процессора, чем большие системы, так как пути передачи данных для ввода-вывода и команд центрального процессора используются в режиме разделения, а цепи центрального процессора нужны для функций ввода-вывода. [39]
Ввод-вывод - это область, в которой взаимосвязь между управлением сортировкой и общим управлением заданиями становится наиболее туманной. [40]
Ввод-вывод в бестиповые файлы осуществляется специальными процедурами BlockRead и BlockWrite. Кроме того, расширяется синтаксис процедур Reset и Rewrite. В остальном принципы работы остаются такими же, как и с типизированными файлами. [41]
Гибкий ввод-вывод, в том числе интерактивный, допускающий использование управляющих символов. [42]
Прозрачный ввод-вывод ( raw I / O) - ввод-вывод, при котором данные передаются непосредственно между внешним устройством и памятью процесса; допустим для байториентированных специальных файлов на магнитных дисках и лентах. [43]
Неформатный ввод-вывод здесь не рассматривается. [44]
Ввод-вывод сообщений из программы осуществляется путем кодирования в ней описываемых далее команд диалога, несколько различающихся для различных языков программирования. [45]