Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Согласование скоростей обмена и кэширование данных. При обмене данными всегда возникает задача согласование скорости



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

В подсистеме ввода-вывода для согласования скоростей обмена широко используется следующие приемы.

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

· Дисковый спул-файлы. Буферизация только на основе ОП оказывается недостаточной – разница между скоростью обмена с ОП, куда процессы помещают данные для обработки, и скоростью работы внешнего устройства часто становится слишком значительной, чтобы в качестве временного буфера можно было бы использоватьОП– ее объ­ема может просто не хватить. Для таких случаев необходимо предусмотреть осо­бые меры, и часто в качестве буфера используется дисковый файл, называемый также спул-файлом (от spool – шпулька, тоже буфер, только для ниток). Типич­ный пример применения спулинга дает организация вывода данных на принтер. Для печатаемых документов объем в несколько десятков мегабайт – не редкость, поэтому для их временного хранения (а печать каждого документа занимает от нескольких минут до десятков минут) объема ОП явно недоста­точно.

· Большая буферная память в контроллерах внешних устройств - особенно, когда помещение данных на диск слишком замедляет обмен (или когда данные выводятся на сам диск). Например, в контроллерах графических диспле­ев применяется буферная память, соизмеримая по объему с оперативной, и это существенно ускоряет вывод графики на экран.

· Кэширование данных. Буферизация данных позволяет не только согласовать скорости работы процес­сора и внешнего устройства, но и решить другую задачу – сократить количество реальных операций ввода-вывода за счет кэширования данных. Дисковый кэш является непременным атрибутом подсистем ввода-вывода практически всех опе­рационных систем, значительно сокращая время доступа к хранимым данным.





Дата публикования: 2015-01-23; Прочитано: 558 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...