Смекни!
smekni.com

Шины (стр. 7 из 8)

Таким образом, в скором будущем, на задней панели компьютера можно будет увидеть

выходы всего двух последовательных шин: USB длянизкоскоростных применений и

Firewire - для высокоскоростных. Причем путь в жизнь у шины IEEE 1394 произойдет

гораздо быстрее, чем у USB. В этом случаепроизводители программных продуктов и

аппаратуры действуют сообща. Уже сейчас доступны различные виды устройств с

шиной Firewire, поддержка этой шины будетвстроена в операционную систему Windows

98 и в ближайшем будущем ведущие производители чипсетов для PC встроят поддержку

этой шины в свои продукты. Такчто 1999 год станет годом Firewire.

(Intelligent Input/Output)

I2O (Intelligent Input/Output) - спецификация, определяющая стандартную

архитектуруинтеллектуального ввода/вывода, не зависящую от специфических

устройств и операционной системы. Спецификация I2O призвана решить две

ключевыепроблемы:

Занятость процессора операциями ввода-вывода

Необходимость в разработке драйверов для каждого устройства и для каждой

операционной системы

Суть архитектуры I2O заключается в обработке низкоуровневых

прерыванийввода-вывода, поступающих от устройств, не центральным процессором

(CPU), а специализированным процессором ввода-вывода (IOP),разработанным

специально для этой цели. В настоящий момент эта задача решается применением

RISC-процессора i960, работающего на частоте 66 МГц сосвоей собственной памятью,

объёмом до 64 МБ. При поддержке обмена сообщениями между несколькими

процессорами, архитектура I2O разгружаетцентральный процессор и позволяет

выполнение задач, требующих интенсивного ввода-вывода и широкой полосы

пропускания, например видеоприложений или работыв среде клиент-сервер.

Применения I2O не ограничены и она может быть использована как в

однопроцессорных, так и многопроцессорных и кластерныхсистемах.

Спецификация I2O определяетразбиение драйвера устройства на две части:

ОС-зависимого и аппаратно-зависимого модуля, созданного для конкретного

устройства. Эти модулиработают автономно и могут выполнять задачи независимо. В

настоящее время поддержка I2O обеспечивается в NetWare 4, Windows NT Server 5.0

иUnixWare. Таким образом, технология с разбиением драйвера, уменьшает общее

число требуемых драйверов: производители операционных систем пишут по

одномудрайверу на каждый класс устройств, например дисковые контроллеры, а

производители оборудования - по одному драйверу на каждое свое

устройство,который может быть использован с любой операционной системой

поддерживающий I2O.

Одна из целей создания открытой архитектуры I2O - обеспечение возможности

легкогоподключения устройств и написания драйверов, расширяющей возможности для

создания новых систем.

Краткий обзор

Две части драйвера I2O устройства представляют собой Operating SystemServices

Module (OSM), модуль обслуживания операционной системы, обеспечивающий интерфейс

с ней и Hardware Device Module (HDM), модульустройства, обеспечивающий

управление оборудованием. OSM работает со внешним устройством посредством HDM.

Общение между этими модулями происходит на двухуровнях - уровне сообщений, на

котором происходит установление связи и транспортном уровне, определяющим

способы разделения информации. Как и вбольшинстве протоколов связи, уровень

сообщений базируется на транспортном уровне.

Модель связи I2O, в комбинации со средой выполнения и конфигурационным

интерфейсом, обеспечиваетнезависимый интерфейс с HDM. Модули способны связаться

друг с другом без знания архитектуры шины или топологии системы. Передаваемые

сообщения формируют некийметаязык, не зависящий от аппаратной реализации. Вся

эта технология сильно напоминает сеть TCP/IP. Такая реализация I2O, кроме всего

прочего,обеспечивает мобильность устройств ввода-вывода.

Модель связи I2O

Модель связи для I2O - это система обмена сообщениями. Когда OSM получает

запросот операционной системы, он транслирует его в запрос I2O и передает его

HDM для обработки. После обработки запроса, HDM возвращает результатобратно OSM,

посылая сообщение посредством уровня сообщений I2O. Далее результат передается

операционной системе, как от любого другого драйвераустройства.

Уровень сообщений

Уровень сообщений определяет открытый, стандартный и абстрактный механизм для

связимежду сервисными модулями, обеспечивая основу для интеллектуального ввода -

вывода. Этот уровень, управляя пересылкой всех запросов, а также

обеспечиваяфункционирование API (Application Programming Interface), связывает

модель драйверов I2O.

Уровень сообщений состоит из трех основных компонент: дескриптора сообщения,

сервиснойпрограммы сообщения (Message Service Routine - MSR), и очереди

сообщений. Дескриптор по существу является адресом ресурса, к которому

идетобращение. Для каждого сообщения, проходящего на уровне сообщений создается

свой дескриптор. Очередь сообщений организуется между передающим и

приемнымустройствами.

Когда драйвер формирует сообщение, оно помещается в очередь и для его

обработкиактивизируется MSR. Сообщение содержит две части - заголовок и тело.

Заголовок содержит тип сообщения и адрес его отправителя.

I2O базируется на очереди между MSR и отправителем. Инициатор запроса и

сервисныймодуль обслуживаются IOP. I2O определяет также формат памяти,

необходимой для функционирования технологии, не зависящий от

организацииоперационной системы.

Модуль обслуживания операционной системы - OSM

OSM обеспечивает интерфейс между операционной системой и уровнем сообщений I2O.В

используемой модели драйверов, OSM представляет собой ту часть драйвера, которая

обеспечивает интерфейс между системно-зависимым API и абстрактнымформатом

сообщений, посылаемых в HDM для обработки. OSM зависят от операционных систем и

создаются их разработчиками.

OSM переводит сообщения операционной системы в формат, который может быть понят

HDM. Передачаинформации обратно, от HDM к операционной системе реализуется также

через OSM посредством уровня сообщений I2O.

Один OSM может обслуживать множественные HDM. Благодаря существованию

дескрипторов на уровнесообщений, OSM обладает возможностью рассылать свои

сообщения многим адресатам, а также организовывать пересылку информации между

ними.

Аппаратный модуль устройства - HDM

HDM - низкоуровневый модуль в среде I2O. HDM представляет собой

аппартно-зависимую часть драйвера, обеспечивающую взаимодействие с

контроллеромили непосредственно устройством. Можно провести аналогию между HDM и

аппаратно зависимой частью драйвера сети или драйвером SCSI в том виде, в

котором онсуществует сегодня. Каждый HDM уникален для каждого конкретного

устройства и производителя. Он поддерживает все низкоуровневые операции

устройства, такиекак синхронные и асинхронные запросы, а также транзакции

управляемые событиями.

HDM окружен средой I2O, которая изолирует его от общения с операционной

системойи шинными протоколами. Таким образом, один HDM может быть использован не

только с различными операционными системами, но даже с различными платформами.

HDM пишетсяпроизводителем устройства иобычно прошивается в адаптер.

Системная среда

Модель I2O может быть применена в любых условиях - как и в однопроцессорных, так

имногопроцессорных системах.

Интерфейсы OSM и HDM входят в основной API I2O. Среда выполнения OSM зависит

отоперационной системы, что оказывает влияние на реализацию некоторых функций

API. В задачи OSM входит реализация связи между API, используемого

операционнойсистемой, и HDM, управляющим устройством.

Кроме основных функций в API HDM может быть введен дополнительный набор команд.

Этот наборнеобходим для прямого общения операционной системы с HDM и применяется

при ее загрузке для инициализации ядра. Примерно это и реализуется в

основныхмногозадачных средах. Однако этот дополнительный набор также является

единым для всех устройств одного класса. Так что технология I2O не несет всебе

никаких ограничений для области ее использования.

Реализация архитектуры I2O

Гибкая, открытая архитектура I2O предоставляет разработчикам различныеварианты

для реализации. Основные три подхода следующие:

Установка IOP на материнскую плату. IOP устанавливаетсяна материнскую плату и

используется при интеллектуальном вводе-выводе. В этом случае IOP используется

в качестве стандартного PCI Bridge и добавляет "интеллектуальности"к шине PCI

Установка IOP на дополнительной плате расширения. Интеллектуальный контроллер

I2O инсталлируется как, например,обычная сетевая карта

Установка опциональной платы расширения с IOP в специализированный слот на

материнской плате. Этот процессор будетфункционировать со всеми устройствами,

требующими интеллектуальный ввод-вывод

Практика использования I2O

Устройства, совместимые с технологией I2O будут маркироваться производителямикак

"I2O ready". Однако в одной системе можно будет применять, как и I2O устройства,

так и обычные,неинтеллектуальные устройства. Это позволит организовать легкий

переход к новой архитектуре. Тем более стоимость материнской платы с IOP

возрастет максимум на$10-15.

Можно ожидать, что в связи со введением дополнительных устройств (IOP) и

разбиения драйвера начасти, скорость обмена информацией может упасть. В

принципе, это мнение оправдано. Однако, в связи с тем что во-первых упрощается

задача написаниядрайверов, а во-вторых разгружается центральный процессор, общая

эффективность системы должна возрасти. Пример подобного роста эффективности -

применение IDEBus Master драйверов.

Внедрение технологии интеллектуального ввода-вывода должно произойти в ближайшее

время,тем более что ведущие производители материнских плат уже представили свои