Операційні системи – основні поняття
ОПЕРАЦІЙНІ СИСТЕМИ
Операційні системи (ОС) займають важливіше місце в сукупності сучасних системних програмних засобів, які складають програмне забезпечення електронно-обчислювальних машин. Вони є основою організації обчислювального процесу у обчислювальній системі та визначають ефективність як використання апаратних компонентів системи, так і розв’язання поставлених задач. Від них залежить також ефективність праці персоналу.
В літературі можна зустріти різні визначення поняття „операційна система”.
Найбільш поширеним є визначення операційної системи як набору програм, призначених для управління ресурсами обчислювальної системи.
Іноді під призначенням ОС мають на увазі розподіл та планування ресурсів, або динамічний і статичний розподіл ресурсів. Таким чином, на перший план виходить проблема розподілу ресурсів.
При цьому під ресурсами розуміють не тільки традиційні види ресурсів, такі як: час роботи окремих пристроїв, адресний простір різних рівнів, функції окремих пристроїв, набори даних, але і: окремі програми і програмні комплекси, які припускають сумісне використання, а іноді і людину. Це визначення базується на деякій моделі обчислювального процесу, у якому паралельно діє декілька учасників (задач, процесів, користувачів та ін.), які конкурують та змагаються за ресурси.
Інша група визначень характеризується функціональним підходом. У цьому випадку операційна система уявляється переліком функцій, які вона повинна виконувати.
До функцій ОС також відносяться забезпечення високих показників по двох найважливіших характеристиках обчислювальних систем: ефективності та надійності.
Під підвищенням ефективності розуміють:
- підвищення ефективності використання апаратних засобів, яке відображається рядом покажчиків (комплексним покажчиком є процент корисного машинного часу);
- підвищення пропускної можливості обчислювальної системи, яке відображається у кількості виконаних робіт у одиницю часу;
- зниження системних витрат;
- підвищення продуктивності праці людини;
- підвищення зручності використання засобів обчислювальної техніки.
Підвищення надійності функціонування обчислювальної системи як одна з функцій ОС має на увазі наявність засобів забезпечення достовірності отриманих результатів, зменшення впливу збоїв та відмов апаратури, зменшення часу поновлення працездатності після збоїв та відмов, а також наявність засобів для створення контрольних точок та повторення розрахунків після збоїв з контрольної точки, засобів резервування даних, програм, процесів.
Особлива увага приділяється функціям ОС по забезпеченню різних режимів використання обчислювальної системи – режиму пакетної обробки. Діалогових режимів, режиму реального часу, режиму розподілу часу, а також важливим функціям по забезпеченню різних категорій користувачів обчислювальних систем.
Більшість реально зустрічающихся визначення ОС відрізняються акцентами на ті, або інші властивості ОС, і як правило характеризуються їхньою комбінацією. Найбільш повним визначенням ОС варто визнати сукупність перерахованих вище характеристик.
Операційна система – це складний багатоцільовий та багатофункціональний комплекс програм, який є складовою частиною практично усіх сучасних обчислювальних систем.
При вивченні проблем розробки ОС виділяється ще один їх бік.
Операційна система є посередником між ЕОМ, з однієї сторони, та людиною – з іншої. Іншими словами, операційна система – логічне розширення функцій апаратури у бік людини. Вона дозволяє від „фізичного” рівня апаратури перейти до більш високого „логічного” рівня, який стає рівнем обчислювальної системи і який є більш зручним для людини.
Склад та функції операційних систем
Компонентний склад ОС визначається набором функцій, для виконання яких вона призначена. Усі її програми можна поділити на дві групи: керуюча програма та системні обробляючі програми.
Керуюча програма – обов’язковий компонент будь-якої ОС. Її функції – планування проходження безперервного потоку завдань, управління розподілом ресурсів, реалізація прийнятих методів організації даних, управління операціями вводу-виводу, організація мультипрограмної роботи, управління працездатністю системи після збоїв та інші.
Керуюча програма скуладається з ряду компонентів, серед яких слід виділити чотири основних:
- управління статичними ресурсами (управління завданнями);
- управління динамічними ресурсами (управління задачами);
- управліня данними;
- управління поновленням.
Управління статичними ресурсами (управління завданнями) виконує попереднє планування потоку завдань для виконання і статичний розподіл ресурсів між завданнями, що одночасно виконуються у процесі підготовки до виконання. До таких ресурсів відносяться розподіл пам’яті (основної, віртуальної, зовнішньої), доступні для використання завданням прострої, які припускають тільки монопольне використання, набори даних та інші. Такі ресурси закріплюються за завданням або його частиною з моменту його ініціалізації до моменту завершення та використовуються у монопольному режимі.
Управління динамцічними ресурсами (управління задачами) виконує динамічний розподіл ресурсів системи між декількома задачами, які вирішуються одночасно, у мультипрограмному режимі. Ці функції виконують програми супервізора, які входять до ядра ОС, що постійно знаходиться у оперативній пам’яті.
Управління даними забезпечує всі операції вводу-виводу (обміну між оперативною пам’яттю та периферійними пристроями) на фізичному та логічному рінях. Воно містить у собі ряд служб, які забезпечують виконання таких функцій, як управління каталогом, управління розподілом пам’яті прямого доступу, обробку помилок вводу-виводу та таке інше. Вони реалізують різні структури даних та можливість доступу до них.
Управління поновленням реєструє машинні збої та відмови, і поновлює працездатність системи після збоїв, якщо це можливо.
Системні обробляючи програми виконуються під управлінням керуючої програми, так саме, як і будь-яка обробляюча програма. Це значить, що вона у повному обсязі може користуватися послугами керуючої програми і не може самостійно виконувати системні функції. Так, наприклад, обробляюча програма не може самостійно виконувати власний ввод-вивід. Операції вводу-виводу обробляюча програма реалізує за допомогою запитів до керуючої програми, яка їх безпосередньо виконує. Централізоване виконання системних функцій керуючою програмою дозволяє виконувати їх більш ефективно та забезпечує високий рівень послуг для користувача.