- •Понятие синтергетической системы
- •Роль информационного взаимодействия
- •Интерфейсы, заданные языком.
- •Понятие коммуникации
- •Зачем нужна разметка данных?
- •Области применения языка xml
- •Правильно построенный документ xml
- •Верифицирующий анализатор xml
- •Интерфейсы анализаторов xml
- •Что такое sax?
- •Образец подстановки xslt
- •Как работает xslt?
- •Язык xPath
- •Понятие протокола
- •Протокол асинхронной передачи байта в rs-232
- •Универсальный асинхронный приемопередатчик
- •Открытая архитектура компьютера
- •Работа шины pci
- •Спецификация шины pci
- •Цикл чтения шины pci
- •Необходимость плотного времени при описании взаимодействия
- •Технология Plug and Play
- •Управление вводом/выводом в ibm pc совместимых компьютерах
- •Физическая организация устройств ввода-вывода
- •Обработка прерываний
- •Драйверы устройств
- •Независимый от устройств слой операционной системы
- •Пользовательский слой программного обеспечения
- •Низкоуровневое программирование взаимодействия с аппаратурой
- •Организация управления вводом/выводом в операционных системах
- •Автоконфигурация устройств на шине pci
- •Программная модель pci
- •Адресные пространства pci
- •Драйвер устройства
- •Логическая модель usb
- •Конвейеры usb
- •Протокол работы с устройством usb
- •Систематика Флинна
- •Высокопроизводительные вычисления
- •Классификация вс по структуре памяти
- •Эффективность параллельных алгоритмов Анализ эффективности параллельных алгоритмов
- •Оценка эффективности алгоритмов
- •Закон Амдала
- •Вычислительные сети
- •Мультиагентные системы
- •Роль протоколов во взаимодействии агентов
- •Распределённая система
- •Агенты и действия в протоколе установления телефонного соединения
- •Служба почты
- •Служба почты как пример распределенной системы
- •Агенты и действия в протоколе передачи сообщений по проводам
- •Коммутация сообщений, коммутация пакетов
- •Функционирование электронной почты
- •Многоцелевое расширение интернет почты (mime)
- •Пакетный способ передачи информации в сетях
- •Интерфейсы канального уровня
- •Доставка сообщений в модели osi
- •Сетезависимые и сетенезависимые уровни модели osi
- •Cтеки протоколов
- •Стек NetBios/smb
- •Стандартный стек tcp/ip
- •Межсетевой протокол ip
- •Модель службы протокола ip
- •Модель службы протокола tcp
- •Коммутация в локальных сетях Ethernet
- •Задача маршрутизации
- •Маршруты движения пакетов
- •Маршрутизаторы как искусственное сообщество агентов
Организация управления вводом/выводом в операционных системах
Одной из главных функций ОС является управление всеми устройствами ввода-вывода компьютера.
ОС должна передавать устройствам команды, перехватывать прерывания и обрабатывать ошибки; она также должна обеспечивать интерфейс между устройствами и остальной частью системы.
В настоящее время существуют сотни различных устройств ввода вывода совместимых с ЭВМ.
Все эти устройства могут быть разбиты на 2 больших класса:
-- блочные (блок-ориентированные)устройства ввода вывода.
-- символьные (байт-ориентированные) устройства ввода вывода.
Блочные устройства позволяют в произвольном порядке читать либо записывать любой блок информации хранящийся на устройстве. Например: жесткий диск, дискета CD-диски, flesh-память.
Символьные устройства позволяют лишь последовательно читать или записывать последовательность символов. Например: клавиатура, мышь, модем, сетевая карта, принтер, сканер.
Классическая схема ЭВМ Фон Неймана представляет следующую организацию ЭВМ.
Дляуправлением устройством ввода вывода уметь вызывать машинными командами управляющими данным устройством.
Программное обеспечение ввода-вывода можно разделить на четыре слоя:
Обработка прерываний,
Драйверы устройств,
Независимый от устройств слой операционной системы,
Пользовательский слой программного обеспечения.
Драйверы устройств
Весь зависимый от устройства код помещается в драйвер устройства. Каждый драйвер управляет устройствами одного типа или, может быть, одного класса.
В операционной системе только драйвер устройства знает о конкретных особенностях какого-либо устройства. Например, только драйвер диска имеет дело с дорожками, секторами, цилиндрами, временем установления головки и другими факторами, обеспечивающими правильную работу диска.
Независимый от устройств слой операционной системы
Большая часть программного обеспечения ввода-вывода является независимой от устройств. Точная граница между драйверами и независимыми от устройств программами определяется системой, так как некоторые функции, которые могли бы быть реализованы независимым способом, в действительности выполнены в виде драйверов для повышения эффективности или по другим причинам.
Типичными функциями для независимого от устройств слоя являются: обеспечениеобщего интерфейса к драйверам устройств, именование устройств, защита устройств, обеспечение независимого размера блока, буферизация, распределение памяти на блок-ориентированных устройствах, распределение и освобождение выделенных устройств, уведомление об ошибках.
Пользовательский слой программного обеспечения
Хотя большая часть программного обеспечения ввода-вывода находится внутри ОС, некоторая его часть содержится в библиотеках, связываемых с пользовательскими программами. Системные вызовы, включающие вызовы ввода-вывода, обычно делаются библиотечными процедурами.
Автоконфигурация устройств на шине pci
PCI (англ. Peripheral component interconnect)— шина ввода/вывода для подключения периферийных устройств к материнской плате компьютера.
PCI-устройства с точки зрения пользователя самонастраиваемы (Plug and Play). После старта компьютера системное программное обеспечение обследует конфигурационное пространство PCI( PCI configuration space) каждого устройства, подключённого к шине, и распределяет ресурсы.
PCI configuration space — конфигурационное адресное пространство PCI.
Одним из главных усовершенствований шины PCI по сравнению с другими архитектурами ввода-вывода стал её конфигурационный механизм. В дополнение к типичным адресным пространствам памяти и ввода-вывода в PCI вводится конфигурационное адресное пространство. Оно состоит из 256 байт, которые можно адресовать, зная номер шины PCI, номер устройства и номер функции в устройстве. Первые 64 байта из 256 стандартизированы, а остальные регистры могут быть использованы по усмотрению изготовителя устройства.
Каждое устройство может затребовать до шести диапазонов в адресном пространстве памяти PCI или в адресном пространстве ввода-вывода PCI.
Настройка прерываний осуществляется также системным программным обеспечением. Запрос на прерывание на шине PCI передаётся с помощью изменения уровня сигнала на одной из линий IRQ, поэтому имеется возможность работы нескольких устройств с одной линией запроса прерывания; обычно системное ПО пытается выделить каждому устройству отдельное прерывание для увеличения производительности.