Главная » Просмотр файлов » Гордеев А.В. Операционные системы (2-е изд., 2004)

Гордеев А.В. Операционные системы (2-е изд., 2004) (1186250), страница 36

Файл №1186250 Гордеев А.В. Операционные системы (2-е изд., 2004) (Гордеев А.В. Операционные системы (2-е изд., 2004)) 36 страницаГордеев А.В. Операционные системы (2-е изд., 2004) (1186250) страница 362020-08-27СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 36)

Это делается путем изме­нения адреса обработки прерывания после выполнения очередной секции, а еслиимеется только одна секция продолжения, она сама передает управление в ту илииную часть кода подпрограммы обработки прерывания.Секция завершения обычно выключает устройство ввода-вывода или просто за­вершает операцию.Управление операциями ввода-вывода в режиме прерываний требует значитель­ных усилий со стороны системных программистов — такие программы создаватьсложнее.

Примером тому может служить существующая ситуация с драйверамипечати. Так, в операционных системах Windows (и Windows 9x, и Windows NT/2000) печать через параллельный порт осуществляется не в режиме с прерывани­ями, как это сделано в других ОС, а в режиме опроса готовности, что приводит к100-процентной загрузке центрального процессора на все время печати. При этом,естественно, выполняются и другие задачи, запущенные на исполнение, но исклю­чительно за счет того, что упомянутые операционные системы поддерживают вы­тесняющую мультизадачность, время от времени прерывая процесс управленияпечатью и передавая центральный процессор остальным задачам.Закрепление устройств,общие устройства ввода-выводаКак известно, многие устройства и, прежде всего, устройства с последовательнымдоступом не допускают совместного использования.

Такие устройства могут статьзакрепленными за процессом, то есть их можно предоставить некоторому вычис­лительному процессу на все время жизни этого процесса. Однако это приводитк тому, что вычислительные процессы часто не могут выполняться параллельно —они ожидают освобождения устройств ввода-вывода. Чтобы организовать совмест­ное использование многими параллельно выполняющимися задачами тех устройствввода-вывода, которые не могут быть разделяемыми, вводится понятие виртуаль­ных устройств.

Принцип виртуализации позволяет повысить эффективность вы­числительной системы.Вообще говоря, понятие виртуального устройства шире, нежели понятие спулинга(spooling — Simultaneous Peripheral Operation On-Line, то есть имитация работы сустройством в режиме непосредственного подключения к нему). Основное назна­чение спулинга — создать видимость разделения устройства ввода-вывода, кото­рое фактически является устройством с последовательным доступом и должноиспользоваться только монопольно и быть закрепленным за процессом. Напри­мер, мы уже говорили, что в случае, когда несколько приложений должны выво­дить на печать результаты своей работы, если разрешить каждому такому прило­жению печатать строку по первому же требованию, то это приведет к потоку строк.не представляющих никакой ценности.

Однако если каждому вычислительномупроцессу предоставлять не реальный, а виртуальный принтер, и поток выводимыхсимволов (или управляющих кодов для их печати) сначала направлять в специ­альный файл на диске (так называемый спул-файл — spool-file) и только потом, поокончании виртуальной печати, в соответствии с принятой дисциплиной обслу­живания и приоритетами приложений выводить содержимое спул-файла на прин­тер, то все результаты работы можно будет легко читать. Системные процессы,которые управляют спул-файлом, называются спулером чтения (spool-reader) илиспулером записи (spool-writer).Достаточно рационально организована работа с виртуальными устройствами в си­стемах Windows 9x/NT/2000/XP компании Microsoft.

В качестве примера можнократко рассмотреть подсистему печати. Microsoft различает термины «принтер» и«устройство печати». Принтер — это некоторая виртуализация, объект операци­онной системы, а устройство печати — это физическое устройство, которое можетбыть подключено к компьютеру. Принтер может быть локальным или сетевым.При установке локального принтера в операционной системе создается новыйобъект, связанный с реальным устройством печати через тот или иной интерфейс.Интерфейс может быть и сетевым, то есть передача управляющих кодов в устрой­ство печати может осуществляться через локальную вычислительную сеть, одна­ко принтер все равно будет считаться локальным.Локальность принтера означает, что-его спул-файл будет находиться на том жекомпьютере, что и принтер.

Если же некоторый локальный принтер предоставитьв сети в общий доступ с теми или иными разрешениями, то для других компьюте­ров и их пользователей он может стать сетевым, Компьютер, на котором имеетсялокальный принтер, предоставленный в общий доступ, называется принт-серве­ром.Для получения управляющих кодов принтера устанавливается программное обес­печение (компания Microsoft называет его высокоуровневым драйвером, хотя пра­вильнее было бы называть его иначе: например, препроцессором).

Эти управляю­щие коды посылаются на устройство печати по соответствующему интерфейсучерез назначенные принтеру порты и управляют работой устройства печати. Приполучении операционной системой от приложения запроса на печать она выделя­ет для этого процесса виртуальный принтер. Можно сказать, что операционнаясистема закрепляет за процессом виртуальный принтер, но никак не устройствопечати.

Обработанные драйвером принтера данные, посланные на него из прило­жения, как правило (по умолчанию), направляются в спул-файл, откуда они затемпередаются на печать по мере освобождения устройства печати и в соответствии сприоритетом локального принтера. При установке сетевого принтера операцион­ная система устанавливает для этого объекта высокоуровневый драйвер и связыа е т п°лученный объект со спулером того компьютера, на котором установлен со­ответствующий локальный принтер.°кальных принтеров, связанных с конкретным устройством печати, на компью-Ре Может быть несколько.

Каждому локальному принтеру можно назначить тот11иной приоритет, который будет учитываться при формировании очереди пе-138Глава 5. Управление вводом-выводом в операционных системаучати в процессе работы спулера. В результате каждый процесс может послать напечать свои данные и не связывать реальное выполнение некоторого задания напечать с занятостью или освобождением самого устройства печати.

Приоритет­ность в печати определяется приоритетом того локального или сетевого принтера,к которому обратилось приложение.Основные системные таблицыввода-выводаДля управления всеми операциями ввода-вывода и отслеживания состояния всехресурсов, занятых в обмене данными, операционная система должна иметь соот­ветствующие информационные структуры. Эти информационные структуры, преж­де всего, призваны отображать следующую информацию:Q состав устройств ввода-вывода и способы их подключения;Q аппаратные ресурсы, закрепленные за имеющимися в системе устройствамиввода-вывода;•логические (символьные) имена устройств ввода-вывода, используя которыевычислительные процессы могут запрашивать те или иные операции вводавывода;•адреса размещения драйверов устройств ввода-вывода и области памяти дляхранения текущих значений переменных, определяющих работу с этими уст­ройствами;•области памяти для хранения информации о текущем состоянии устройстваввода-вывода и параметрах, определяющих режимы работы устройства;Q данные о текущем процессе, который работает с данным устройством;Q адреса тех областей памяти, которые содержат данные, собственно и участвую­щие в операциях ввода-вывода (получаемые при операциях ввода данных ивыводимые на устройство при операциях вывода данных).Эти информационные структуры часто называют таблицами ввода-вывода, хотяони, в принципе, могут быть организованы и в виде списков.Каждая операционная система ведет свои таблицы ввода-вывода, их состав (и ко­личество, и назначение каждой таблицы) может сильно отличаться.

В некоторыхоперационных системах вместо таблиц создаются списки, хотя использование ста­тических структур данных для организации ввода-вывода, как правило, приводитк более высокому быстродействию. Здесь очень трудно вычленить общие состав­ляющие, тем более что для современных операционных систем подробной доку­ментации на эту тему крайне мало, разве что воспользоваться материалами нынеустаревших ОС. Тем не менее попытаемся это сделать, опираясь на идеи семей­ства простых, но эффективных операционных систем реального времени, разрабо­танных фирмой Hewlett Packard для своих мини-ЭВМ.Исходя из принципа управления вводом-выводом исключительно через суперви­зор операционной системы и учитывая, что драйверы устройств ввода-вывода ис-лпновные системные таблицы ввода-вывода139пользуют механизм прерываний для установления обратной связи центральнойчасти с внешними устройствами, можно сделать вывод о необходимости созданияп о крайней мере трех системных таблиц.Первая таблица (или.

список) содержит информацию обо всех устройствах вводавывода, подключенных к вычислительной системе. Назовем ее условно таблицейоборудования (equipment table), а каждый элемент этой таблицы пусть называется\]СВ (Unit Control Block — блок управления устройством ввода-вывода). Каждыйэлемент UCB таблицы оборудования, как правило, содержит следующую инфор­мацию об устройстве:• тип устройства, его конкретная модель, символическое имя и характеристикиустройства;• способ подключения устройства (через какой интерфейс, к какому разъему,какие порты и линия запроса прерывания используются и т. д.);• номер и адрес канала (и подканала), если такие используются для управленияустройством;Q информация о драйвере, который должен управлять этим устройством, адресасекции запуска и секции продолжения драйвера;а информация о том, используется или нет буферизация при обмене данными сустройством, «имя» (или просто адрес) буфера, если такой выделяется из сис­темной области памяти;• установка тайм-аута и ячейки для счетчика тайм-аута;• состояние устройства;• поле указателя для связи задач, ожидающих устройство;• возможно, множество других сведений.Поясним перечисленное.

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6549
Авторов
на СтудИзбе
299
Средний доход
с одного платного файла
Обучение Подробнее