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

Spooling і захоплення пристроїв



Про поняття spooling ми говорили в першій лекції нашого курсу, як про механізм, що вперше дозволив сумістити реальні операції вводу-виводу одного завдання з виконанням іншого завдання. Тепер ми можемо визначити це поняття точніше. Під словом spool ми маємо на увазі буфер, що містить вхідні або вихідні дані для пристрою, на якому слід уникати чергування його використання (виникнення interleaving – див. розділ "Interleaving, race condition і взаємовиключають" лекції 5) різними процесами. Правда, в сучасних обчислювальних системах spool для вводу даних практично не використовується, а в основному призначений для накопичення вихідної інформації.

Розглянемо як зовнішній пристрій принтер. Хоча принтер не може друкувати інформацію, що поступає одночасно від декількох процесів, може виявитися бажаним дозволити процесам здійснювати вивід на принтер паралельно. Для цього операційна система замість передачі інформації безпосередньо на принтер накопичує дані, що виводяться, в буферах на диску, організованих у вигляді окремого spool-файла для кожного процесу. Після завершення деякого процесу відповідний йому spool-файл ставиться в чергу для реального друку. Механізм, що забезпечує подібні дії, і отримав назву spooling.

У деяких операційних системах замість використання spooling для усунення race condition застосовується механізм монопольного захоплення пристроїв процесами. Якщо пристрій вільний, то один з процесів може отримати його в монопольне розпорядження. При цьому всі інші процеси при спробі здійснення операцій над цим пристроєм будуть або блоковані (переведені в стан очікування), або отримають інформацію про неможливість виконання операції до тих пір, поки процес, що захопив пристрій, не завершиться або явно не повідомить операційну систему про свою відмову від його використання.

Забезпечення spooling і механізму захоплення пристроїв є прерогативою базової підсистеми вводу-виводу.





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



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