Операційна система як менеджер ресурсів - студопедія
Концепція, яка розглядає операційну систему перш за все як зручний інтерфейс користувача, - це погляд зверху вниз. Альтернативний погляд, від низу до верху, дає уявлення про операційну систему як про механізм, присутньому в пристрої комп'ютера для управління всіма частинами цієї складної машини. Згідно з другим підходом робота операційної системи полягає в забезпеченні організованого і контрольованого розподілу процесорів, пам'яті і пристроїв введення-виведення між різними програмами, змагаються за право їх використовувати.
Нехай на одному комп'ютері запущено три програми, і всі вони одночасно відправляють на один і той же принтер свої вивідні дані. Можливо, перші кілька рядків на аркуші з'явилися б від першої програми, наступні кілька - з другої програми, потім б слід було кілька рядків від третьої програми і т.д. Результат неприйнятний. Операційна система наводить порядок в подібних ситуаціях, буферізіруя на диску всі дані, призначені для друку. У процесі роботи програми операційна система зберігає її вихідні дані на диску в тимчасовому файлі. Потім, після закінчення роботи цієї програми, система відправляє дані на принтер, в той час як інша програм-ма може продовжувати формувати свої вихідні дані, не звертаючи уваги на те, що вони поки ще фактично не надсилаються на принтер.
Коли комп'ютером (або мережею) користуються кілька користувачів, необхідність в управлінні пам'яттю, пристроями введення-виведення, іншими ресурсами і їх захисту сильно зростає, оскільки користувачі можуть звертатися до них в абсолютно непередбачуваному порядку. До того ж часто доводиться розподіляти між користувачами не тільки обладнання, а й інформацію (файли, бази даних і т. Д.). З цієї точки зору основне завдання операційної системи полягає у відстеженні того, хто і який ресурс використовує, в обробці запитів на ресурси, в підрахунку коефіцієнта завантаження та вирішенні проблем конфліктуючих запитів від різних програм і користувачів.
Управління ресурсами включає в себе їх мультиплексування (розподіл) двома способами: в часі і в просторі. Коли ресурс розподіляється в часі, різні користувачі і програми використовують його по черзі. Спочатку один з них отримує доступ до використання ресурсу, потім інший і т.д. Наприклад, кілька програм хочуть звернутися до центрального процесора. У цій ситуації операційна система спочатку надати їм доступ до процесора одній програмі, потім, після того як вона попрацювала достатній час, іншій програмі, потім наступної і, врешті-решт, знову першою. Визначення того, як довго ресурс буде використовуватися в часі, хто буде наступним і на який час йому надається ресурс - це завдання операційної системи. Ще один приклад тимчасового мультиплексування - розподіл завдань, що посилаються для друку на принтер. Коли завдання вишиковуються в чергу для друку на одному принтері, операційній системі кожен раз потрібно приймати рішення про те, яке з них буде друкуватися таким.