Системные процедуры. В общем случае часть программного обеспечения ввода-вывода входит в состав ОС, часть содержится в стандартных библиотеках, связываемых с пользовательскими программами.
Подсистема спулинга (spooling). Спулинг - это способ работы с выделенными (не разделяемыми между процессами) устройствами в мультипрограммной системе. Типичное устройство, требующее спулинга - принтер.
Если просто позволить каждому пользовательскому процессу открыть специальный файл, связанный с принтером, то принтер может быть монополизирован процессом на произвольное время, что недопустимо. Поэтому создается специальный процесс – монитор, получающий исключительные права на использование устройства, и специальный каталог – каталог спулинга. Чтобы напечатать файл, пользовательский процесс помещает его в каталог спулинга. Процесс-монитор по очереди распечатывает все файлы, содержащиеся в каталоге спулинга.