Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1-90.101-109.111.118.127-128.doc
Скачиваний:
5
Добавлен:
17.09.2019
Размер:
866.3 Кб
Скачать

11. Особливості алгоритмів управління ресурсами.

1.3. Особливості алгоритмів керування ресурсами

Від ефективності алгоритмів керування локальними ресурсами комп'ютера багато в чому залежить ефективність всієї мережевої ОС вцілому. Наприклад, у залежності від особливостей використаного алгоритму керування процесором, ОС поділяють на багатозадачні й однозадачні, багатокористувацькі й однокористувацькі, на системи, що підтримують багатониткову обробку і не підтримують її, на багатопроцесорні й однопроцесорні системи.

Підтримка багатозадачності. По числу одночасно виконуваних задач ОС можуть бути розділені на два класи:

· однозадачні (наприклад, MS-DOS, MSX);

· багатозадачні (OC EC, OS/2, UNІ, Wіndows 95).

Однозадачні ОС в основному виконують функцію надання користувачу віртуальної машини, роблячи більш простим і зручним процес взаємодії користувача з комп'ютером. Однозадачні ОС включають засоби керування периферійними пристроями, засоби керування файлами, засоби спілкування з користувачем.

Багатозадачні ОС, крім перерахованих вище функцій, керують поділом спільно використовуваних ресурсів, таких як процесор, ОП, файли і зовнішні пристрої.

Підтримка багатокористувацького режиму. По числу одночасно працюючих користувачів ОС поділяються на:

· однокористувацькі (MS-DOS, Wіndows 3.x, ранні версії OS/2);

· багатокористувацькі (UNІ, Wіndows NT).

Головною відмінністю багатокористувацьких систем від однокористувацьких є наявність засобів захисту інформації кожного користувача від несанкціонованого доступу інших користувачів. Важливо відмітити, що не всяка багатозадачна система є багатокористувацькою, і не всяка однокористувацька ОС є однозадачною.

Виштовхуюча і невиштовхуюча багатозадачність. Найважливішим розподілюваним ресурсом є процесорний час. Спосіб розподілу процесорного часу між декількома одночасно існуючими в системі процесами (чи нитками) багато в чому визначає специфіку ОС. Серед безлічі існуючих варіантів реалізації багатозадачності можна виділити дві групи алгоритмів:

· невиштовхуюча багатозадачність (NetWare, Wіndows 3.x);

· виштовхуюча багатозадачність (Wіndows NT, OS/2, UNІ).

Основною відмінністю між виштовхуючим і невиштовхуючим варіантами багатозадачності є степінь централізації механізму планування процесів. У першому випадку механізм планування процесів цілком зосереджений в ОС, а в другому - розподілений між системою і ПП. При невиштовхуючій багатозадачності активний процес виконується доти, поки він сам, по власної ініціативі, не віддасть керування ОС для того, щоб та вибрала з черги інший готовий до виконання процес.

Підтримка багатонитковості. Важливою властивістю ОС є можливість розпаралелювання обчислень у рамках однієї задачі. Багатониткова ОС розділяє процесорний час не між задачами, а між їх окремими вітками (нитками).

Багатопроцесорна обробка. Іншою важливою властивістю ОС є відсутність чи наявність у ній засобів підтримки багатопроцесорної обробки - мультипроцесування. Мультипроцесування приводить до ускладнення всіх алгоритмів керування ресурсами.

Революційною подією даного етапу з'явилася промислова реалізація мультипрограмування. (Помітимо, що у вигляді концепції й експериментальних систем цей спосіб організації обчислень існував уже біля десяти років.) В умовах різко зрослих можливостей комп'ютера по обробці й зберіганню даних виконання тільки однієї програми в кожний момент часу виявилося вкрай неефективним. Рішенням стало мультипрограмування — спосіб організації обчислювального процесу, при якому в пам'яті комп'ютера перебувало одночасно кілька програм, що поперемінно виконуються на одному процесорі. Ці вдосконалення значно поліпшили ефективність обчислювальної системи: комп'ютер тепер міг використовуватися майже постійно, а не менш половини часу роботи комп'ютера, як це було раніше.

Мультипрограмні системи пакетної обробки так само, як і їхні однопрограмні попередники, мали за мету забезпечення максимального завантаження апаратури комп'ютера, однак вирішували це завдання більш ефективно. У мультипрограмному пакетному режимі процесор не простоював, поки одна програма виконувала операцію в/в (як це відбувалося при послідовному виконанні програм у системах ранньої пакетної обробки), а перемикався на іншу готову до виконання програму. У результаті досягалося збалансоване завантаження всіх пристроїв комп'ютера, а отже, збільшувалося число завдань, розв'язуваних за одиницю часу.

16-18. Існує кілька схем класифікації операційних систем. Нижче наведена класифікація по деяких ознаках з погляду користувача. Реалізація багатозадачності По числу одночасно виконуваних завдань операційні системи можна розділити на два класи: • багатозадачні (Unix, OS/2, Windows); • однозадачні (наприклад, MS-DOS). Багатозадачна ОС, вирішуючи проблеми розподілу ресурсів і конкуренції, повністю реалізує мультипрограмний режим відповідно до вимог роздягнула "Основні поняття, концепції ОС". Багатозадачний режим, що втілює в собі ідею поділу часу, називається що витісняє (preemptive). Кожній програмі виділяється квант процесорного часу, після закінчення якого керування передається іншій програмі. Говорять, що перша програма буде витиснута. У режимі, що витісняє, працюють користувальницькі програми більшості комерційних ОС. У деяких ОС (Windows 3.11, наприклад) користувальницька програма може монополізувати процесор, тобто працювати в режимі, що не витісняє. Як правило, у більшості систем не підлягає витисненню код властиво ОС. Відповідальні програми, зокрема завдання реального часу, також не витісняються. Більш докладно про це розказано в лекції, присвяченої плануванню роботи процесора. По наведених прикладах можна судити про приблизність класифікації. Так, в ОС MS-DOS можна організувати запуск дочірнього завдання й наявність у пам'яті двох і більше завдань одночасно. Однак ця ОС традиційно вважається однозадачною, головним чином через відсутність захисних механізмів і комунікаційних можливостей. Підтримка багатокористувацького режиму По числу одночасно працюючих користувачів ОС можна розділити на: • однокористувацькі (MS-DOS, Windows 3.x); • багатокористувацькі (Windows NT, Unix). Найбільш істотна відмінність між цими ОС полягає в наявності в багатокористувацьких системах механізмів захисту персональних даних кожного користувача. Операційною системою називають спеціалізований комплекс програм, які управляють роботою апаратних та прикладних програмних ресурсів комп’ютера самостійно або за вимогами користувача.

Залежно від способу виконання завдань операційні системи поділяють на три категорії:

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]