WWW.REFERATCENTRAL.ORG.UA - Я ТУТ НАВЧАЮСЬ

... відкритий, безкоштовний архів рефератів, курсових, дипломних робіт

ГоловнаІнформатика, Компютерні науки → Планування ресурсу „центральний процесор” - Реферат

Планування ресурсу „центральний процесор” - Реферат

числу одночасно виконуваних задач ОС можуть бути розділені на два класи:
· однозадачні (наприклад, 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І).
Основною відмінністю між виштовхуючим і невиштовхуючим варіантами багатозадачності є степінь централізації механізму планування процесів. У першому випадку механізм планування процесів цілком зосереджений в ОС, а в другому - розподілений між системою і ПП. При невиштовхуючій багатозадачності активний процес виконується доти, поки він сам, по власної ініціативі, не віддасть керування ОС для того, щоб та вибрала з черги інший готовий до виконання процес.
Підтримка багатонитковості. Важливою властивістю ОС є можливість розпаралелювання обчислень у рамках однієї задачі. Багатониткова ОС розділяє процесорний час не між задачами, а між їх окремими вітками (нитками).
Багатопроцесорна обробка. Іншою важливою властивістю ОС є відсутність чи наявність у ній засобів підтримки багатопроцесорної обробки - мультипроцесування. Мультипроцесування приводить до ускладнення всіх алгоритмів керування ресурсами.
2. Поява мультипрограмних ОС для мейнфреймів
Революційною подією даного етапу з'явилася промислова реалізація мультипрограмування. (Помітимо, що у вигляді концепції й експериментальних систем цей спосіб організації обчислень існував уже біля десяти років.) В умовах різко зрослих можливостей комп'ютера по обробці й зберіганню даних виконання тільки однієї програми в кожний момент часу виявилося вкрай неефективним. Рішенням стало мультипрограмування - спосіб організації обчислювального процесу, при якому в пам'яті комп'ютера перебувало одночасно кілька програм, що поперемінно виконуються на одному процесорі. Ці вдосконалення значно поліпшили ефективність обчислювальної системи: комп'ютер тепер міг використовуватися майже постійно, а не менш половини часу роботи комп'ютера, як це було раніше.
Мультипрограмні системи пакетної обробки так само, як і їхні однопрограмні попередники, мали за мету забезпечення максимального завантаження апаратури комп'ютера, однак вирішували це завдання більш ефективно. У мультипрограмному пакетному режимі процесор не простоював, поки одна програма виконувала операцію в/в (як це відбувалося при послідовному виконанні програм у системах ранньої пакетної обробки), а перемикався на іншу готову до виконання програму. У результаті досягалося збалансоване завантаження всіх пристроїв комп'ютера, а отже, збільшувалося число завдань, розв'язуваних за одиницю часу.
У мультипрограмних системах пакетної обробки користувач як і раніше був не має змоги інтерактивно взаємодіяти зі своїми програмами. Для того щоб хоча б частково повернути користувачам відчуття безпосередньої взаємодії з комп'ютером, був розроблений інший варіант мультипрограмних систем - системи поділу часу. Цей варіант розрахований на багатотермінальні системи, коли кожний користувач працює за своїм терміналом.
Реалізація мультипрограмування зажадала внесення дуже важливих змін в апаратури комп'ютера, безпосередньо спрямованих на підтримку нового способу організації обчислювального процесу. При поділі ресурсів комп'ютера між програмами необхідно забезпечити швидке перемикання процесора з однієї програми на іншу, а також надійно захистити коди й дані однієї програми від ненавмисного або навмисного псування іншою програмою. У процесорах з'явилися привілейований і користувацький режими роботи, спеціальні регістри для швидкого перемикання з однієї програми на іншу, засобу захисту областей пам'яті, а також розвинена система переривань.
У привілейованому режимі, призначеному для роботи програмних модулів операційної системи, процесор міг виконувати всі команди, у тому числі й ті з них, які дозволяли здійснювати розподіл і захист ресурсів комп'ютера. Програмам, що працюють у користувацькому режимі, деякі команди процесора були недоступні. Таким чином, тільки ОС могла управляти апаратними засобами й виконувати роль монітора й арбітра для користувацьких програм, які виконувалися в непривілейованому, користувацькому режимі.
2.1. Мультипроцесорна обробка
Мультипроцесорна обробка - це спосіб організації обчислювального процесу в системах з декількома процесорами, при якому кілька завдань (процесів, потоків) можуть одночасно виконуватися на різних процесорах системи.
Концепція мультипроцесування не нова, вона відома з 70-х років, але до середини 80-х доступних багатопроцесорних систем не існувало. Однак до теперішнього часу стало звичайним включення декількох процесорів в архітектуру навіть ПК. Більше того, багатопроцесорність тепер є одним з необхідних вимог, які пред'являються до комп'ютерів, використовуваним як центральний сервер більш-менш великої мережі.
Не слід плутати мультипроцесорну обробку з мультипрограмною обробкою. У мультипрограмних системах паралельна робота різних пристроїв дозволяє одночасно вести обробку декількох програм, але при цьому в процесорі в кожний момент часу виконується тільки одна програма. Тобто в цьому випадку кілька завдань виконуються поперемінно на одному процесорі, створюючи лише видимість паралельного виконання. А в мультипроцесорних системах кілька завдань виконуються дійсно одночасно, тому що є кілька обробних пристроїв - процесорів. Звичайно, багатопроцесуваннязовсім не виключає мультипрограмування: на кожному із процесорів може поперемінно виконуватися деякий закріплений за даним процесором набір завдань.
Мультипроцесорна організація системи приводить до ускладнення всіх алгоритмів керування ресурсами, наприклад потрібно планувати процеси не для одного, а для декількох процесорів, що набагато складніше. Складності полягають і в зростанні числа конфліктів по звертанню до пристроїв вводу-висновку, даним,
Loading...

 
 

Цікаве