![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Независимое от устройств программное обеспечение ввода-вывода
Функции независимого от устройств программного обеспечения ввода-вывода: o Единообразный интерфейс для драйверов устройств, o Буферизация o Сообщения об ошибках o Захват и освобождение выделенных устройств (блокирование) o Размер блока, не зависящий от устройств Единообразный интерфейс для драйверов устройств Кроме интерфейса, в него также входят проблемы, o именование устройств o защита устройств Буферизация Рассмотрим несколько примеров буферизации. a) Не буферизованный ввод - после ввода каждого символа происходит прерывание b) Буферизация в пространстве пользователя - приходится держать загруженными необходимые страницы памяти в физической памяти. c) Буферизация в ядре с копированием в пространство пользователя - страница загружается только когда буфер ядра полный, данные из буфера ядра в буфер пользователя копируется за одну операцию. Проблема может возникнуть, когда буфер ядра полный, а страница буфера пользователя еще не загружена. d) Двойная буферизация в ядре - если один буфер заполнен, и пока он выгружается, символы пишутся во второй буфер. Сообщения об ошибках Наибольшее число ошибок возникает именно от операции ввода-вывода, поэтому их нужно определять как можно раньше. Ошибки могут быть очень разные в зависимости от устройств. Захват и освобождение выделенных устройств Для устройств (принтер) с которыми должен работать в одно время только один процесс, необходима возможность захвата и освобождения устройств. Когда один процесс занял устройство, остальные встают в очередь. Независимый от устройств размер блока Размер блока должен быть одинаковый для верхних уровней, и не зависеть от устройств (размеров секторов на диске).
|