Еволюція ОС

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук

Строганов Володимир

Історія еволюції обчислювальних систем

Відомо, що комп'ютер був винайдений англійським математиком Чарльзом Бебіджем наприкінці ХVIII ст.. Його "аналітична машина" так і не змогла запрацювати по-справжньому, тому що технології того часу не задовільняли потребам по виготовленню деталей точної механики, які були необхідними для обчислювальної техніки. Відомо також, що цей комп'ютер не мав операційної системи. Розглянемо періоди еволюції ОС.


І (1945-1955) Лампові машини. ОС відсутні. Програмування виключно на машинній мові. Програмування за допомогою перемикачів.

Деякий прогрес у створенні цифрових обчислювальних машин відбувся після другої світової війни. В середині 40-х років були створені перші лампові обчислювальні пристрої. В той час одна й та сама група людей брала участь і в проектуванні, і експлуатуванні, і в програмуванні обчислювальної машини. Це була скоріш науково-дослідницька робота в області обчислювальної техніки, ніж використання комп'ютерів в якості інструмента для вирішення будь-яких практичних задач з інших прикладних областей. Програмування здійснювалося виключно на машинній мові. Про операційні системи не було й мови, всі задачі організації обчислювального процеса вирішувалися вручну кожним програмістом з пульта керування. Не було ніякого іншого системного програмного забезпечення, окрім математичних бібліотек і службових програм.


ІІ (1955-1960) Комп'ютери на основі транзисторів. Пакетні ОС (програма записується на пакет перфокарт). Починають продаватися ЕОМ.

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

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


ІІІ (поч.1960-1980) Комп'ютери на основі інтегральних мікросхем, перші багатозадачні ОС. З'являються МейнФрейми. Робота он-лайн та офф-лайн. Техніка підкачки СВАП. Мультипрограмування (декілька задач). Перепини.

В цей час в технічній базі відбувся перехід від окремих напівпровідникових елементів типа транзисторів до інтегральних мікросхем, що дало набагато більші можливості новому, третьому поколінню комп'ютерів. Для цього періоду характерним є створення сімейств програмно-сумісних машин. Першим сімейством програмно-сумісних машин, побудованих на інтегральних мікросхемах, є серія машин IBM/360. Побудоване на початку 60-х років це сімейство значно перевершувало машини другого покоління за критерієм ціна/продуктивність. Незабаром ідея програмно-сумісних машин стала загальновизнаною.

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

Однак, незважаючи на неозорі розміри і безліч проблем, OS/360 та інші подібні до неї операційні системи машин третього покоління дійсно задовольняли більшості вимог споживачів. Найважливішим досягненням ОС цього покоління стала реалізація мультипрограмування. Мультипрограмування - це спосіб організації обчислювального процесу, при якому на одному процесорі поперемінно виконуються кілька програм. Поки одна програма виконує операцію вводу-виводу, процесор не простоює, як це відбувалося при послідовному виконанні програм (однопрограмний режим), а виконує іншу програму (багатопрограмний режим). При цьому кожна програма завантажується в свою ділянку оперативної пам'яті, званий розділом.

При цьому кожна програма завантажується в свою ділянку оперативної пам'яті, звану розділом.

Інше нововведення - спулінг (spooling). Спулінг в той час визначався як спосіб організації обчислювального процесу, відповідно до якого завдання зчитувалися з перфокарт на диск в тому темпі, в якому вони з'являлися в приміщенні обчислювального центру, а потім, коли чергове завдання завершувалося, нове завдання з диска завантажувалося в звільнившийся розділ.

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


ІV (1980-теперешній час) ПК. Класичні мнережеві розподілені системи.

1) 1995 - випуск Windows95 (дружній графічний інтерфейс)

2) Області вичислення

Windows10s 1982278 3745222.jpg

Наступний період в еволюції операційних систем пов'язаний з появою великих інтегральних схем (ВІС). В ці роки відбулося різке зростання ступеня інтеграції і здешевлення мікросхем. Комп'ютер став доступним окремій людині, і наступила ера персональних комп'ютерів. З точки зору архітектури персональні комп'ютери нічим не відрізнялися від класу мінікомп'ютерів типу PDP-11, але ціна у них істотно відрізнялася. Якщо мінікомп'ютер дав можливість мати власну обчислювальну машину відділу підприємства або університету, то персональний комп'ютер зробив це можливим для окремої людини.

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

На ринку операційних систем домінували дві системи: MS-DOS і UNIX. Однопрограмна однокористувальницька ОС MS-DOS широко використовувалася для комп'ютерів, побудованих на базі мікропроцесорів Intel 8088, а потім 80286, 80386 і 80486. Мультипрограмна багатокористувальницька ОС UNIX домінувала в середовищі "не-интеловских" комп'ютерів, особливо побудованих на базі високопродуктивних RISC-процесорів.

У середині 80-х стали бурхливо розвиватися мережі персональних комп'ютерів, що працюють під управлінням мережевих або розподілених ОС.

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

У 90-ті роки практично всі операційні системи, що займають помітне місце на ринку, стали мережевими. Мережеві функції сьогодні вбудовуються в ядро ОС, будучи її невід'ємною частиною. Операційні системи отримали кошти для роботи з усіма основними технологіями локальних (Ethernet, Fast Ethernet, Gigabit Ethernet, Token Ring, FDDI, ATM) і глобальних (Х.25, frame relay, ISDN, ATM) мереж, а також засоби для створення складених мереж (IP, IPX, AppleTalk, RIP, OSPF, NLSP). В операційних системах використовуються засоби мультиплексування декількох стеків протоколів, за рахунок якого комп'ютери можуть підтримувати одночасну мережну роботу з різнорідними клієнтами і серверами. З'явилися спеціалізовані ОС, які призначені виключно для виконання комунікаційних задач. Наприклад, мережева операційна система IOS компанії Cisco Systems, що працює в маршрутизаторах, організує в мультипрограмному режимі виконання набору програм, кожна з яких реалізує один з комунікаційних протоколів.

У другій половині 90-х років усі виробники операційних систем різко посилили підтримку засобів роботи з Інтернетом (крім виробників UNIX-систем, в яких ця підтримка завжди була істотною). Крім самого стека TCP / IP в комплект поставки почали включати утиліти, що реалізують такі популярні сервіси Інтернету, як telnet, ftp, DNS і Web. Вплив Інтернету проявився і в тому, що комп'ютер перетворився з чисто обчислювального пристрою на засіб комунікацій з розвиненими обчислювальними можливостями.

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

Особлива увага протягом цього десятиліття приділялася корпоративним мережевим операційним системам. Їх подальший розвиток представляє одне з найбільш важливих завдань і в осяжному майбутньому. Корпоративна oпeраціонная система відрізняється здатністю добре і стійко працювати у великих мережах, які характерні для великих підприємств, які мають відділення в десятках міст і, можливо, в різних країнах. Таким мережам органічно властива високий ступінь гетерогенності програмних і апаратних засобів, тому корпоративна ОС повинна безпроблемно взаємодіяти з операційними системами різних типів і працювати на різних апаратних платформах. До теперішнього часу досить явно визначилася трійка лідерів у класі корпоративних ОС - це Novell NetWare 4.x і 5.0, Microsoft Windows NT 4.0 і Windows 2000, а також UNIX-системи різних виробників апаратних платформ.