КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Структуры данных для ввода-вывода в ядре ОС
Подсистема ввода-вывода в ядре ОС Операционная система управляет устройствами ввода-вывода. ОС осуществляет планирование, включая упорядочение запросов на ввод-вывод в очередях к каждому устройству. ОС обеспечивает буферизацию – запись данных в память в процессе передачи между устройствами. Цели буферизации:
Как неоднократно отмечалось, для оптимизации работы с внешними устройствами организуется кэширование – использование быстрой память, в которой хранится копия данных (фактически в ней сохраняются наиболее часто используемые блоки). Следует, однако, иметь в виду, что содержимое кэш-памяти - всегда только копия реальных данных, поэтому в некоторых случаях приходится синхронизировать содержимое кэша с содержимым диска, чтобы не допустить рассогласованности информации. Кэширование - ключ к повышению производительности дисковых устройств. Весьма важна также такая функция ОС, как буферизация вывода (spooling) – задержка вывода на устройство, с целью поддержания целостности информации, выводимой одним и тем же процессом. Типичный пример – печать на принтер. ОС выполняет также резервирование устройства – обеспечение монопольного доступа к нему. Имеются системные вызовы для занятия и освобождения устройства монопольного доступа. ОС контролирует отсутствие тупиков (deadlocks), которые возможны при монопольном использовании устройств. ОС выполняет обработку ошибок ввода-вывода. Система поддерживает восстановление информации после чтения с диска, недоступности устройства, временных сбоев при записи. В большинстве случаев возвращается номер (код) ошибки, в случае, если запрос на ввод-вывод завершается неудачно. В системные журналы записывается информация об обнаруженных проблемах.
В ядре ОС хранится информация о состоянии для компонент ввода-вывода, включая таблицы открытых файлов, сетевых соединений, состояние символьных устройств. Она представляет собой большое число сложных структур данных (очередей ввода-вывода и таблиц устройств) для контроля буферов, распределения памяти и др. Реализация многих из этих системных структур использует объектно-ориентированные методы и передачу сообщений. Структура модулей ввода-вывода в системе UNIX изображена на рис. 21.5. Рис. 21.5. Структура модулей ввода-вывода в ядре UNIX.
Дата добавления: 2013-12-13; Просмотров: 374; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |