Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
вступ, ст 22-93.doc
Скачиваний:
5
Добавлен:
02.09.2019
Размер:
1.62 Mб
Скачать

360. Ми не можемо тут дати повну оцінку цієї книги, але достатньо буде сказати, що на її обкладинці зображено стадо доісторичних тварин, загрузли у

ямі з дьогтем. Обкладинка книги [302] демонструє схожу точку зору на операційні системи, колишні динозаврами в світі комп'ютерів.

Незважаючи на свої величезні розміри і недоліки, OS/360 і подібні їй

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

Найважливішим досягненням стала багатозадачність. На комп'ютері IBM 7094, коли поточна робота припинялася в очікуванні операцій введення-виведення з магнітної стрічки або інших пристроїв, центральний процесор просто бездіяльності діяв до закінчення операції введення-виведення. При складних наукових обчислювальному обчисленнях і обмежених можливостях процесора пристрої введення-виведення ствовали досить рідко, так що це витрачений даремно час не грало суттєвої ролі. Але при комерційної обробці даних час очікування пристрої введення-виведення могло займати 80 або 90% усього робочого часу, тому необхідно було щось зробити, щоб уникнути тривалого

простоювання досить дорогого процесора.

Вирішення цієї проблеми полягала в розбитті пам'яті на кілька частин,

званих розділами, кожному з яких давалося окреме завдання, як по-

показано на рис. 1.4. Поки одне завдання чекало завершення роботи пристрою

введення-виведення, інше могло використовувати центральний процесор. Якщо в

оперативної пам'яті містилася достатня кількість завдань, центральний процесор

міг бути завантажений майже на всі 100% за часом. Безліч одночасно зберігаються в пам'яті завдань вимагало наявності спеціального обладнання для

захисту кожного завдання від можливого цікавості і збитку з боку решти

інших завдань. 360-а та інші системи третього покоління були забезпечені подібними апаратними засобами.

Рис. 1.4. Багатозадачна система з трьома завданнями в пам'яті

Іншим важливим плюсом операційних систем третього покоління стала

здатність зчитувати завдання з перфокарт на диск у міру того, як їх

приносили в машинний зал. Всякий раз, коли поточне завдання закінчувалося,

операційна система могла завантажувати нове завдання з диска в звільнився розділ пам'яті і запускати його. Цей технічний прийом називається «підкачкою» данйих або спулінг (spooling, це англійське слово походить від абревіатури

Simultaneous Peripheral Operation On Line - спільна периферійна операція

в інтерактивному режимі) і його також використовують для видачі отриманих

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

кома могла стати причиною збою при компіляції, і виходило, що програміст витрачав даремно половину дня.

Бажання скоротити час очікування відповіді привело до розробки режиму

поділу часу, варіанту багатозадачності, при якому в кожного користувача є свій діалоговий термінал. Якщо двадцять користувачів зареєстровані в системі, що працює в режимі поділу часу, і сімнадцять з них думають, розмовляють або п'ють каву, то центральний процесор по черзі надається трьом користувачам, що бажають працювати на машині. Так як люди, налагоджуючи програми, зазвичай видають короткі команди (наприклад, компілювати процедуру на п'яти сторінках ') частіше, ніж довгі (наприклад, порядок файл з мільйонами записів), то комп'ютер може забезпечувати швидке інтерактивне обслуговування декількох користувачів. При цьому він може працювати над великими пакетами у фоновому режимі, коли центральний процесор не зайнятий іншими завданнями. Перша серйозна система з режимом поділу часу CTSS (Compatible Time Sharing System - Сумісна система поділу часу) була розроблена в Массачусетському технологічному інституті (МЛ.Т.) на спеціально переробленому комп'ютері IBM 7094 [75]. Проте режим поділу часу не став дійсно популярним до тих пір, поки не отримали широкого розповсюдження необхідні технічні засоби захисту.

Після успіху системи CTSS Массачусетський технологічний інститут,

система дослідницьких лабораторій Bell Labs і корпорація General Electric (тоді

головний виробник комп'ютерів) вирішили почати розробку «комп'ютерного

підприємства громадського користування »- машини, Яка повинна була

підтримувати сотні одночасних користувачів у режимі поділу часу.

Зразком для нової машини послужила система розподілу електроенергії.

Коли вам потрібна електроенергія, ви просто вставляєте штепсель у розетку і отримуєте енергії стільки, скільки вам потрібно. Проектувальники цієї системи, через відомої як MULTICS (MULTiplexed Information and Computing Service мультиплексна інформаційна та обчислювальна служба), уявляли собі одну

величезну обчислювальну машину, скористатися послугою якій міг кожен людина в районі Бостона. Думка про те, що машини, набагато потужніші, ніж

їх мейнфрейм GE-645, будуть продаватися мільйонами за ціною тисяча доларів

за штуку всього лише через тридцять років, здавалася найчистішої наукові

фантастикою, як якби сьогодні хто-небудь надумав проектувати надзвукові

трансатлантичні підводні поїзда.

Успіх системи MULTICS був вельми неоднозначний. Ця система

розроблялася для того, щоб забезпечити сотні користувачів машиною, трохи більше потужною, ніж персональний комп'ютер з процесором Intel 386, хоча при цьому має можливість роботи зі значно більшою кількістю пристроїв

введення-виведення. Це було не так вже шалено, як може здатися, тому що в ті

дні люди знали, як писати маленькі, ефективні програми - навичка, який згодом було втрачено. Існувало багато причин, за якими система MULTICS не захопила весь світ. Не останню роль зіграв той факт, що ця система була написана на мові PL / I, а компілятор мови PL / I з'явився лише через кілька років, до того ж першу версію цього компілятора можна було назвати працездатною з великою натяжкою. Крім того, система MULTICS

була надзвичайно претензійна для свого часу, багато в чому мимохідь на аналі-

аналітичну машину Чарльза Беббіджа в дев'ятнадцятому столітті.

Отже, MULTICS подала багато конструктивних ідей комп'ютерним теоретичного

теоретикам, але перетворити її в серйозний продукт і добитися комерційного успіху виявилося набагато важче, ніж очікувалося. Система дослідницьких лабораторій Bell Labs вибула з проекту, а компанія General Electric зовсім залишила комп'ютерний бізнес. Однак Массачусетський технологічний інститут виявив завзятість і з часом отримав працюючу систему. Зрештою, вона була

продана як комерційне виріб компанією Honeywell, що купила комп'ютерний

бізнес General Electric, та встановлено приблизно у вісімдесяти великих компані-

компаніях і університетах по всьому світу. Незважаючи на свою нечисленність, користувачі системи MULTICS були відчайдушно віддані їй. Наприклад, компанії General Motors, Ford і Управління національної безпеки США залишили свої сис-

системи MULTICS тільки наприкінці 90-х років, через 30 років після виходу системи.

До теперішнього часу ідея комп'ютерного підприємства громадського

користування видихалася, але вона може благополучно повернутися до життя у формі асивних централізованих Інтернет-серверів, що виконують основну частину боти, до яких будуть приєднані щодо «дурні» користувальницькі

машини. Мотивування, ймовірно, буде такою: більшість користувачів

не захоче адмініструвати все більше ускладнюється і вибагливу систему

комп'ютера і вважатиме за краще довірити цю роботу команді професіоналів,

працюють на обслуговуючу сервер компанію. Електронна комерція вже

розвивається в цьому напрямку, створюються різні компанії, що управляють

електронними супермаркетами на багатопроцесорних серверах, з якими з'єднуються прості машини клієнтів. Все це дуже нагадує задум системи MULTICS.

Незважаючи на невдачу з точки зору комерції, система MULTICS значною

значно вплинула на подальші операційні системи. Це описано в книгах [76,