Смекни!
smekni.com

Операционные системы. Управление памятью. Ввод-вывод (стр. 5 из 5)

Устройства ввода-вывода обычно состоят из механической и электронной частей. Механический компонент находится в самом устройстве. Электронный компонент устройства называется контрол­лером или адаптером. В современных компьютерах контроллеры встраиваются в материнскую плату или располагаются на самом ус­тройстве ввода-вывода. Многие контроллеры способны управлять несколькими идентичными устройствами. Если интерфейс между контроллером и устройством является официальным стандартом ANSI, IEEE или ISO либо фактическим стандартом, то различные производители могут выпускать отдельно устройства и контроллеры, удовлетворяющие данному интерфейсу. Так производятся жесткие диски, соответствующие интерфейсу IDE (Integrated Drive Electronics — встроенный интерфейс накопителей) или SCSI (Small Computer System Interface — системный интерфейс малых компьютеров).

Часто интерфейс между устройством и контроллером является интерфейсом низкого уровня. С диска в контроллер поступает по­следовательный поток битов, начинающийся с заголовка сектора (преамбулы), за которым следует 4096 бит в секторе, и контрольная сумма, называемая кодом исправления ошибок ЕСС (Error Correcting Code). Заголовок сектора записывается на диск во время формати­рования. Он содержит номера цилиндра и сектора, размер сектора, коды синхронизации и другую служебную информацию.

Работа контроллера заключается в конвертировании последова­тельного потока битов в блок байтов и коррекцию ошибок. Обычно байтовый блок накапливается в буфере контроллера. Затем проверя­ется контрольная сумма блока, и если она совпадает с указанной в заголовке сектора, то блок считается принятым без ошибок. После этого блок копируется в оперативную память.

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

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

Тесно связан с концепцией независимости от устройств прин­цип единообразного именования. Имя файла или устройства должно быть просто текстовой строкой или целым числом. Оно никак не должно зависеть от физического устройства.

Другим важным аспектом ПО ввода-вывода является обработка ошибок. Ошибки должны обрабатываться как можно ближе к аппа­ратуре. Если контроллер обнаружил ошибку чтения, он должен по возможности исправить эту ошибку сам. Если он не может это сде­лать, то ошибку должен обработать драйвер устройства. Многие ошибки бывают временными, например ошибки чтения, вызванные пылинками на читающих головках. Такие ошибки исчезают при по­вторном чтении блока. Только если нижний уровень не может сам справиться с проблемой, о ней следует информировать верхний уро­вень. Во многих случаях восстановление может осуществляться на нижнем уровне, так, что верхние уровни даже не будут знать о на­личии ошибок.

Одним из ключевых вопросов является способ переноса данных — синхронный (блокирующий) или асинхронный (управляемый прерываниями). Большинство операций ввода-вывода на физическом уровне являются асинхронными — ЦП запускает перенос данных и переключается на другой процесс, пока не придет прерывание.

Еще одним аспектом ПО ввода-вывода является буферизация. Часто данные, поступающие с устройства, не могут быть сохранены там, куда они направлены. Например, когда пакет приходит по сети, ОС не знает, куда его поместить, пока не будет проанализировано его содержимое. Буферизация предполагает копирование данных в больших количествах, что часто является основным фактором сни­жения производительности операций ввода-вывода.

И последним понятием, которое связано с вводом-выводом, яв­ляется понятие выделенных устройств и устройств коллективного ис­пользования. С некоторыми устройствами, такими как диски, может одновременно работать большое количество пользователей. При этом не должно возникать проблем при одновременном открытии на од­ном и том же диске нескольких файлов. Другие устройства, такие как накопители на магнитной ленте, предоставляются в монопольное пользование. Пока не завершит свою работу один пользователь на­копитель не может быть предоставлен другому пользователю. ОС должна уметь управлять как устройствами общего доступа, так и выделенными устройствами.

Существуют три различных способа осуществления операций ввода-вывода. Простейший вид ввода-вывода состоит в том, что всю работу выполняет центральный процессор. Этот метод называется программным вводом-выводом. ЦП вводит или выводит каждый байт или слово, находясь в цикле ожидания готовности устройства вво­да-вывода. Второй способ представляет собой управляемый прерыва­ниями ввод-вывод, при котором ЦП начинает передачу ввода-выво­да для символа или слова, после чего переключается на другой процесс, пока прерывание от устройства не сообщит ему об оконча­нии операции ввода-вывода. Третий способ заключается в исполь­зовании прямого доступа к памяти (DMA — Direct Memory Access), при котором отдельная микросхема управляет переносом целого бло­ка данных и инициирует прерывание только после окончания опе­рации переноса блока.

Заключение

На данный момент мировая компьютерная индустрия развивается очень стремительно. Производительность систем возрастает, а следовательно возрастают возможности обработки больших объёмов данных. Операционные системы класса MS-DOS уже не справляются с таким потоком данных и не могут целиком использовать ресурсы современных компьютеров. Поэтому она больше нигде широко не используется. Все стараются перейти на более совершенные ОС, какими являются UNIX и Windows. В данной курсовой работе я рассмотрел основное понятие ОС, особенности ее работы, вкратце рассмотрел ее основные характеристики, такие как управление памятью и ввод-вывод информации.

Список литературы

1. Соболь Б.В., Галин А.Б. и др. Информатика. Ростов н/Д, Феникс, 2007. -446с.

2. Сергеева И.И., Музалевская Н.В. и др. Информатика: Учебник. - М.: ФОРУМ: ИНФРА-М, 2006. -336с.

3. Степанов А.Н. Информатика: Учебник для вузов. 4-е изд.-СПБ.: Питер, 2006. -684с.

4. Симонович С.В. Информатика - базовый курс. 2-ое издание, - СПб: Питер, 2004. -640с.