8.1. Связь компьютера с периферийными устройствами
Механизмы взаимодействия компьютеров в сети многое позаимствовали у схемы взаимодействия компьютера с периферийными устройствами, поэтому начнем рассмотрение принципов работы сети с этого «досетевого» случая. Соединение компьютера с периферийным устройством чаще всего представляет собой связь «точка-точка».
Для обмена данными между компьютером и периферийным устройством (ПУ) в компьютере предусмотрен внешний интерфейс, или порт (рис. 2.1), то есть набор проводов, соединяющих компьютер и периферийное устройство, а также набор правил обмена информацией по этим проводам.
Существуют как весьма специализированные интерфейсы, пригодные для подключения узкого класса устройств (например, графических мониторов высокого разрешения фирмы Vista), так и интерфейсы общего назначения, являющиеся стандартными и позволяющие подключать различные периферийные устройства. Примерами стандартных интерфейсов, используемых в компьютерах, являются параллельный интерфейс Centronics, предназначенный, как правило, для подключения принтеров, и последовательный интерфейс RS-232C, который поддерживается многими терминалами, принтерами, графопостроителями, манипуляторами типа «мышь» и многими другими устройствами.
Интерфейс реализуется со стороны компьютера совокупностью аппаратных и программных средств: контроллером ПУ и специальной программой, управляющей этим контроллером, которую часто называют драйвером соответствующего периферийного устройства.
Связь компьютера с периферийным устройством
Данные
Команды контроллера:
«Установить начало листа», «Переместить магнитную головку», «Сообщить состояние устройства» и др.
Со стороны ПУ интерфейс чаще всего реализуется аппаратным устройством управления ПУ, хотя встречаются и программно-управляемые периферийные устройства.
Программа, выполняемая процессором, может обмениваться данными с помощью команд ввода-вывода с любыми модулями, подключенными к внутренней шине компьютера, в том числе и с контроллерами ПУ.
Периферийные устройства могут принимать от компьютера как данные, например байты информации, которую нужно распечатать на бумаге, так и команды управления, в ответ на которые устройство управления ПУ может выполнить специальные действия, например, перевести головку диска на требуемую дорожку или же вытолкнуть лист бумаги из принтера. Периферийное устройство использует внешний интерфейс компьютера не только для приема информации, но и для передачи информации в компьютер, то есть обмен данными по внешнему интерфейсу, как правило, является двунаправленным. Так, например, даже принтер, который по своей природе является устройством вывода информации, возвращает в компьютер данные о своем состоянии.
Итак, приложение, которому требуется передать некоторые данные на периферийное устройство, обращается с запросом на выполнение операции ввода-вывода к операционной системе. В запросе указываются: адрес данных в оперативной памяти, идентифицирующая информация о периферийном устройстве и операция, которую надо выполнить. Получив запрос, операционная система запускает соответствующий драйвер, передавая ему в качестве параметра адрес выводимых данных. Дальнейшие действия по выполнению операции ввода-вывода со стороны компьютера реализуются совместно драйвером и контроллером ПУ. Контроллер работает под управлением драйвера. Контроллеры ПУ принимают команды и данные от драйвера в свой внутренний буфер, который часто называется регистром, или портом, а затем производят необходимые преобразования данных и команд, полученных от драйвера, в соответствии с форматами, понятными устройству управления ПУ, и выдают их на внешний интерфейс.
Распределение обязанностей между драйвером и контроллером может быть разным, но чаще всего контроллер поддерживает набор простых команд по управлению периферийным устройством, а драйвер определяет последовательность их выполнения, заставляя периферийное устройство совершать более сложные действия по некоторому алгоритму. Например, контроллер принтера может поддерживать такие элементарные команды, как «Печать символа», «Перевод строки», «Возврат каретки» и т. п. Драйвер же принтера с помощью этих команд организует печать строк символов, разделение документа на страницы и другие более высокоуровневые операции. Для одного и того же контроллера можно разработать различные драйверы, которые с помощью одного и того же набора доступных команд будут реализовывать разные алгоритмы управления ПУ.
Рассмотрим схему передачи одного байта информации от прикладной программы на периферийное устройство. Программа, которой потребовалось выполнить обмен данными с ПУ, обращается к драйверу этого устройства, сообщая ему в качестве параметра адрес байта памяти, который нужно передать. Драйвер загружает значение этого байта в буфер контроллера ПУ, который начинает последовательно передавать биты в линию связи, представляя каждый бит соответствующим электрическим сигналом. Чтобы устройству управления ПУ стало понятно, что начинается передача байта, перед передачей первого бита информации контроллер ПУ формирует стартовый сигнал специфической формы, а после передачи последнего информационного бита — столовый сигнал. Эти сигналы синхронизируют передачу байта.
Кроме информационных бит, контроллер может передавать бит контроля четности для повышения достоверности обмена. Устройство управления, обнаружив на соответствующей линии стартовый бит, выполняет подготовительные действия и начинает принимать информационные биты, формируя из них байт в своем приемном буфере. Если передача сопровождается битом четности, то выполняется проверка правильности передачи: при правильно выполненной передаче в соответствующем регистре устройства управления устанавливается признак завершения приема информации.
На драйвер обычно возлагаются наиболее сложные функции протокола (например, подсчет контрольной суммы последовательности передаваемых байтов, анализ состояния периферийного устройства, проверка правильности выполнения команды). Но даже самый примитивный драйвер контроллера должен поддерживать как минимум две операции: «Взять данные из контроллера в оперативную память» и «Передать данные из оперативной памяти в контроллер».
В самом простом случае связь компьютеров может быть реализована с помощью тех же самых средств, которые используются для связи компьютера с периферией, например, через последовательный интерфейс RS-232C. При этом, в отличие от процедуры обмена данными компьютера с периферийным устройством, когда программа работает, как правило, только с одной стороны (со стороны компьютера), здесь происходит взаимодействие двух программ, выполняемых на каждом из компьютеров.
Программа, работающая на одном компьютере, не может получить непосредственный доступ к ресурсам другого компьютера — его дискам, файлам, принтеру. Она может только «попросить» об этом другую программу, выполняемую на том компьютере, которому принадлежат эти ресурсы. Эти «просьбы» выражаются в виде сообщений, передаваемых по каналам связи между компьютерами. Сообщения могут содержать не только команды на выполнение некоторых действий, но и собственно информационные данные (например, содержимое некоторого файла).
Взаимодействие двух компьютеров
... информационного пространства школ района с созданием доменного ресурсного центра; создание конференц-зала для проведения уроков-лекций с использованием компьютерных и информационных технологий; организация самообразования и дистанционного образования. 3. Информатизация управленческой деятельности: полный перевод документооборота школы в электронный формат; создание автоматизированных ...
... подобная программа будет включена в план ФПКП, то оплата труда специалистов, проводящих повышение квалификации, будет производиться из средств ФПКП. Глава 2. Образовательные возможности компьютерной сети 2.1 Электронная почта Наиболее распространенной коммуникационной технологией и соответствующим сервисом в компьютерных сетях стала технология компьютерного способа пересылки и обработки ...
... к сведениям по уровню рейтинга за семестр. Заключение В курсовой работе были рассмотрены понятия компьютерной сети, информационного пространства вуза, организация работы компьютерных сетей, приведены примеры успешной работы данного направления различных высших учебных заведений. В заключение хотелось бы остановиться на перспективах развития образовательной информационной среды. Одним из ...
... пользоваться и которая не подведет; - операционная система Windows XP Home Edition более удобная и более быстрая. 2. Разработка компьютерной сети на предприятии по разработке программного обеспечения 2.1 Постановка задачи Необходимо разработать локальную сеть из 70 компьютеров. Выбор технологии подключения к Интернет произволен. Удаленный участок сети необходимо разместить в диаметре 1 ...
0 комментариев