DVD+R-PN-8.5x8BULK.jpg
comp.jpg


Ввод-вывод, отображаемый на пространство памяти

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

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

Но тут возникает вопрос, как центральный процессор обменивается данными с регистрами управления и буферами данных устройств. Есть два альтернативных варианта. В первом из них каждому регистру управления назначается номер пор­та ввода-вывода, являющийся 8- или 16-разрядным целым числом. Набор всех портов ввода-вывода формирует пространство портов ввода-вывода, которое защищено от доступа со стороны обычных пользовательских программ (доступ к нему имеет только операционная система). Используя специальные команды ввода-вывода, например

IN REG.PORT

центральный процессор может считать данные из регистра управления PORT и со­хранить полученный результат в своем регистре REG. Аналогично этому, используя команду

OUT PORT.REG

центральный процессор может записать содержимое своего регистра REG в регистр управления PORT. Многие компьютеры первых поколений, включая практически все универсальные компьютеры, такие как IBM 360 и все его преемники, работали именно таким образом.

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

 
Поиск

Хотя люди и привыкли пользоваться другими однократно записываемыми но­сителями информации вроде бумаги или фотопленки, но им все же понадоби­лись перезаписываемые компакт-диски. В настоящее время одной из доступных технологий является использование перезаписываемого компакт-диска типа CD-RW (CD Rewritable), для которого используются носители той же емкости, что и для записываемого компакт-диска типа CD-R.

Реклама