Багатозадачні пакетні системи
При використанні монітора бажано було б застосовувати також й інші можливості апаратного забезпечення, а саме:
- захист пам’яті. Під час роботи програми користувача вона не повинна вносити зміни в область пам’яті монітора. Якщо це трапиться, то апаратне забезпечення процесора повинно виявити помилку та передати управління монітору;
- таймер. Таймер використовується для того, щоб запобігти ситуації, коли одне завдання захопить безмежний контроль над системою. Таймер виставляється на початку кожного завдання, і після закінчення певного проміжку часу програма користувача зупиняється, а управління передається монітору;
- привілейовані команди. Деякі команди повинні мати підвищені привілеї і виконуватися тільки монітором. Це, наприклад, команди введення-виведення. Якщо програмі користувача потрібно здійснити введення-виведення, вона повинна запитати для виконання цих операцій монітор;
- переривання. Ця можливість надає ОС велику гнучкість при передачі управління програмі користувача та її відновленні.
Постачальники комп’ютерів швидко зрозуміли, що без таких можливостей апаратного забезпечення навіть прості пакетні ОС можуть привести до хаосу.
Третє покоління (1965-1980): інтегральні схеми та багатозадачність. На початку 60-х років у світі переважали комп’ютери типу IBM-7094 для числових розрахунків в науці та техніці, та IBM-1401, які широко використовувались банками для сортування та друку даних. Розвиток та підтримка цих двох ліній для виробників були достатньо дорогим задоволенням. Тому фірма IBM спробувала вирішити ці проблеми разом, випустивши єдину серію універсальних машин IBM/360, які повинні задовільняти потребам усіх покупців. Машини мали однакову структуру та набір команд, розрізнялися вони тільки ціною та продуктивністю (об’ємом пам’яті, швидкодією процесора, кількістю пристроїв введення-виведення і т.і.), і були програмно-сумісними знизу догори, тобто від простих моделей до більш складних.
Корпорація IBM досягла миттєвого успіху, а ідею родини сумісних комп’ютерів прийняла і решта всіх основних виробників. Програмна сумісність вимагала і сумісності операційних систем. Такі операційні системи повинні були б працювати і на великих, і на малих обчислювальних системах, з великою та з малою кількістю різноманітної периферії, у комерційній області та в області наукових досліджень. Тому, щоб управляти всією цією родиною комп’ютерів, була створена єдина операційна система OS/360, яка повинна була добре працювати на всіх цих моделях.
Ні IBM, ні інша фірма не могли написати ПЗ, яке задовольняло б багатьом суперечливим вимогам. В результаті з’явилася величезна та надзвичайно складна ОС. Вона складалась з мільйонів рядків, які були написані на Асемблері тисячами програмістів, і містила тисячі помилок. Не дивлячись на свої величезні розміри та недоліки, OS/360 та подібні до неї ОС 3-го покоління насправді непогано задовільняли вимогам клієнтів.
Іншим важливим плюсом ОС 3-го покоління стала здатність читати завдання з перфокарт на диск по мірі того, як їх приносили до машинної зали (або зі стрічки), як тільки закінчувалося поточне завдання. Цей технічний прийом називається “підкачкою”даних або спулингом(spooling, від Simultaneous Peripheral Operation On Line – миттєва периферійна операція в інтерактивному режимі). З появою підкачки стали більше не потрібні спеціальні пристрої та багаторазові перенесення магнітних стрічок.
Ефективність роботи процесора в ОС 3-го покоління значно підвищилася. Тепер у пам’яті комп’ютера було достатньо місця для операційної системи та двом або більше програмам користувачів. Тепер, коли одне із завдань чекає завершення операцій введення-виведення, процесор може перемикатися на інше завдання і так далі. Такий режим відомий як багатозадачність (multiprogramming) і є основною рисою в сучасних ОС.
Робота багатозадачної пакетної системи та деяких простих пакетних систем базувалася на певних апаратних особливостях комп’ютера. Найзначнішим доповненням, яке стало корисним для багатозадачності, з’явилося апаратне забезпечення, що підтримує переривання введення-виведення. Використовуючи цю можливість, процесор генерує команду введення-виведення для одного завдання та переходить до іншого на той час, поки контролером пристрою здійснюється введення-виведення. Після завершення операції введення-виведення процесор отримує переривання, і управління передається програмі обробки переривань зі складу ОС. Потім управління передається іншому завданню.
Багатозадачні ОС складніші за системи послідовної обробки завдань, хоча б через те, що, для того, щоб обробити декілька завдань одночасно, вони повинні знаходитись в основній пам’яті, а для цього потрібна система управління пам’яттю.
Дата добавления: 2015-09-28; просмотров: 1662;