Реферат

На тему:

Операційна система і середовища

Структура програмних засобів обчислювальної системи

Операційні системи і середовища

У англомовній технічній літературі термін System Software (системне
програмне забезпечення) означає програми і комплекси програм, що є
загальними для всіх, хто спільно використовує технічні засоби
комп’ютера, і вживані як для автоматизації розробки (створення) нових
програм, так і для організації виконання існуючих програм. З цих позицій
системне ПЗ може бути розділено на наступні п’ять груп:

Операційні системи.

Системи управління файлами.

Інтерфейсні оболонки для взаємодії користувача з ОС і програмні
середовища.

Системи програмування.

Утиліти.

Розглянемо коротко ці групи системних програм.

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

Основними функціями, які виконує ОС, є наступні:

Прийом від користувача (або від оператора системи) завдань або команд,
сформульованих на відповідній мові — у вигляді директив (команд)
оператора або у вигляді вказівок (своєрідних команд) за допомогою
відповідного маніпулятора (наприклад, за допомогою миші), — і їх
обробка;

— прийом і виконання програмних запитів на запуск, припинення, зупинку
інших програм;

— завантаження в ОП належних виконанню програм;

— ініціація програми (передача їй управління, внаслідок чого процесор
виконує програму);

— ідентифікація всіх програм і даних;

— забезпечення роботи систем управлінь файлами (СУФ) и/или систем
управління базами даних, що дозволяє різко збільшити ефективність всього
ПЗ;

— забезпечення режиму мультипрограмування, тобто виконання двох або
більш програм на одному процесорі, створююче видимість їх одночасного
виконання;

— забезпечення функцій по організації і управлінню всіма операціями в/в;

— задоволення жорстким обмеженням на час відповіді в режимі реального
часу (характерно для відповідних ОС);

— розподіл пам’яті, а в більшості сучасних систем і організація ВП;

— планування і диспетчеризація задач відповідно до заданих стратегією і
дисциплінами обслуговування;

— організація механізмів обміну повідомленнями і даними між програмами,
що виконуються;

— захист однієї програми від впливу іншої; забезпечення збереження
даних;

— надання послуг на випадок часткового збою системи;

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

2. Призначення системи управління файлами — організація більш зручного
доступу до даних, організованих як файли. Саме завдяки системі
управління файлами замість низькорівневого доступу до даних з вказівкою
конкретних фізичних адрес потрібного нам запису використовується
логічний доступ з вказівкою імені файлу і запису в ньому. Як правило,
всі сучасні ОС мають відповідні системи управління файлами. Проте
виділення цього виду системного ПЗ в окрему категорію представляється
доцільним, оскільки ряд ОС дозволяє працювати з декількома файловими
системами (або з однією з декількох, або відразу з декількома
одночасно). В цьому випадку говорять про вмонтовувані ФС (додаткову
систему управління файлами можна встановити), і в цьому значенні вони
самостійні. Більш того, можна назвати приклади найпростіших ОС, які
можуть працювати і без ФС, а значить, їм необов’язково мати систему
управління файлами, або вони можуть працювати з однією з вибраних
файлових систем. Треба, проте, розуміти, що будь-яка система управління
файлами не існує сама по собі — вона розроблена для роботи в конкретній
ОС і з конкретною ФС. Можна сказати, що всім відома ФС FAT (file
allocation table) 1 має безліч реалізацій як система управління файлами,
наприклад FAT-16 для самої MS-DOS, super-FAT для OS/2, FAT для Windows
NT і т.д. Іншими словами, для роботи з файлами, організованими
відповідно до деякої ФС, для кожної ОС повинна бути розроблена
відповідна система управління файлами; і ця система управління файлами
працюватиме тільки в тій ОС, для якої вона і створена.

Для зручності взаємодії з ОС можуть використовуватися додаткові
інтерфейсні оболонки. Їх основне призначення — або розширити можливості
по управлінню ОС, або змінити вбудовані в систему можливості. Як
класичні приклади інтерфейсних оболонок і відповідних операційних
середовищ виконання програм можна назвати різні варіанти графічного
інтерфейсу X Window в системах сімейства UNIX (наприклад, До Desktop
Environment в Linux), PM Shell або Object Desktop в OS/2 з графічним
інтерфейсом Presentation Manager; нарешті, можна вказати різноманітні
варіанти інтерфейсів для сімейства ОС Windows компанії Microsoft, які
замінюють Explorer і можуть нагадувати або UNIX з його графічним
інтерфейсом, або OS/2, або MAC OS. Слід зазначити, що про сімейство ОС
компанії Microsoft із загальним інтерфейсом, реалізовуваним програмними
модулями з назвою Explorer (у файлі system.ini, який знаходиться в
каталозі Windows, є рядок SHELL=EXPLORER. EXE), все ж таки можна
сказати, що замінюваною в цих системах є тільки інтерфейсна оболонка,
тоді як саме операційне середовище залишається незмінним; вона
інтегрована в ОС. Іншими словами, операційне середовище визначається
програмними інтерфейсами, тобто API (арplication program interface).
Інтерфейс прикладного програмування (API) включає управління процесами,
пам’яттю і в/в.

Ряд ОС можуть організовувати виконання програм, створених для інших ОС.
Наприклад, в OS/2 можна виконувати як програми, створені для самої OS/2,
так і програми, призначені для виконання в середовищі MS-DOS і Windows
3.x. Відповідна операційна середовище організовується в ОС в рамках
окремої ВМ. Аналогічно, в системі Linux можна створити умови для
виконання деяких програм, написаних для Windows 95/98. Певними
можливостями виконання програм, створених для іншого операційного
середовища, володіє і Windows NT. Ця система дозволяє виконувати деякі
програми, створені для MS-DOS, OS/2 1.x, Windows 3.x. Правда, в своєму
останньому сімействі ОС Windows XP розробники вирішили відмовитися від
підтримки можливості виконання DOS-програм.

Нарешті, до цього класу системного програмного забезпечення слід
віднести і емулятори, що дозволяють змоделювати в одній ОС яку-небудь
іншу машину або ОС. Так, відома система емуляції WMWARE, яка дозволяє
запустити в середовищі Linux будь-яку іншу ОС, наприклад Windows. Можна,
навпаки, створити емулятор, що працює в середовищі Windows, який
дозволить змоделювати комп’ютер, що працює під управлінням будь-якої ОС,
у тому числі і під Linux.

Таким чином, термін операційне середовище означає відповідний інтерфейс,
необхідний програмам для звернення до ОС з метою одержати певний сервіс
— виконати операцію в/в, одержати або звільнити ділянку пам’яті і т.д.

3. Система програмування на мал. 1 представлена перш за все такими
компонентами, як транслятор з відповідної мови, бібліотеки підпрограм,
редактори, компонувальники і відладчики. Не буває самостійних
(відірваних від ОС) систем програмування. Будь-яка система програмування
може працювати тільки у відповідній ОС, під яку вона і створена, проте
при цьому вона може дозволяти розробляти програмне забезпечення і під
інші ОС. Наприклад, одна з популярних систем програмування на мові C/C++
від фірми Watcom для OS/2 дозволяє одержувати програми і для самої OS/2,
і для DOS, і для Windows.

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

4.Під утилітами розуміють спеціальні системні програми, з по потужністю
яких можна як обслуговувати саму ОС, так і готувати для роботи носії
даних, виконувати перекодування даних, здійснювати оптимізацію
розміщення даних на носії і про переводити деякі інші роботи, пов’язані
з обслуговуванням обчислювач ний системи. До утиліт слід віднести і
програму розбиття накопичувача на магнітних дисках на розділи, і
програму форматування, і програму перенесення основних системних файлів
самої ОС. Також до утиліт відносять ця і відомі комплекси програм від
фірми Symantec, що носять ім’я Пітера Нортона (творця цієї фірми і
співавтора популярного набору утиліт для перших IBM PC). Природно, що
утиліти можуть працювати тільки у відповідній операційній середовищу.

2.Основні поняття

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

Програмне забезпечення, необхідне для керування комп’ютером, для
створення й підтримки виконання інших програм користувача, а також для
надання користувачеві набору всіляких послуг, називається системним
програмним забезпеченням (system software).

Системне програмне забезпечення можна класифікувати в такий спосіб:
операційні системи, сервісні системи, програмно-інструментальні засоби й
системи технічного обслуговування (мал.2).

Рис.2. Класифікація програмного забезпечення

У наборі системних програмних продуктів головне місце займають ОС
(operating system). Операційна система (ОС) — сукупність програм, які
керують роботою всіх пристроїв ПК і процесом виконання ПП. ОС бере на
себе виконання таких операцій, як контроль працездатності обладнання ПК;
виконання процедури початкового завантаження; керування роботою всіх
пристроїв ПК; керування файловою системою; взаємодія користувача із ПК;
завантаження й виконання прикладних програм; розподіл ресурсів ПК,
таких, як оперативна пам’ять, процесорний час і периферійні пристрої між
прикладними програмами.

Головними відмінними рисами сучасних ОС є:

багатозадачність — здатність забезпечувати виконання декількох програм
одночасно;

розвинутий графічний користувацький інтерфейс;

використання всіх можливостей, які надаються сучасними мікропроцесорами;

стійкість у роботі й захищеність;

повна незалежність від апаратури ( підтримка всіх видів дисплеїв і
принтерів);

сумісність із усіма видами додатків, розробленими для MS-DOS.

До числа таких ОС насамперед відносяться: Windows 9х фірми MS, Windows
NT (NT — Hew Technology — «нова технологія») фірми MS, OS/2 War фірми
IBM, операційні системи сімейства UNIX.

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

Оболонка операційної системи — це програмний продукт, що робить
спілкування користувача з комп’ютером більш комфортним. У зв’язку з
недосконалістю користувацького інтерфейсу операційних систем сімейства
DOS було розроблено кілька операційних оболонок. Найбільшу популярність
серед користувачів ПК одержала операційна оболонка Norton Commander,
створена компанією Peter Norton Computing.

Утиліти — це службові програми, які надають користувачеві ряд додаткових
послуг. До утиліт відносять наступні програмні засоби: дискові
компресори; дискові дефрагментаторы; програми резервного копіювання
даних; архіватори; програми, оптимізуючі використання оперативної
пам’яті; програми захисту й відновлення даних; антивірусні програми й
ін.

Розходження між операційними оболонками й операційними середовищами
досить умовні. У ряді літературних джерел вони стерті, тому що
операційне середовище має всі ознаки оболонки, за винятком того, що
остання не формує нового середовища виконання програм. Це є функцією
лише операційної системи. У свою чергу, операційне середовище не можна
назвати операційною системою, тому що вона не може функціонувати
самостійно. Виходячи із цього операційне середовище можна назвати
повнофункціональною надбудовою над ОС. Найбільш відомими операційними
середовищами є системи Windows 3.1 і Windows for Workgroups (Windows для
робочих груп), які функціонують поверх DOS, при цьому Windows for
Workgroups є мережевим розширенням Windows 3.1.

Програмно-інструментальні засоби — це програмні продукти, призначені для
розробки програмного забезпечення. До них відносять системи
програмування, які включають систему команд процесора, периферійних
пристроїв, транслятори (компілятори й інтерпретатори) з різних мов
програмування. У цей час найбільш часто використовуються
процедурно-орієнтовані системи програмування, такі, як MS Visual Basic,
Borland Delphi і інструментарій штучного інтелекту.

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

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

Програмно-логічний контроль заснований на використанні надлишкового коду
початкових і проміжних даних ПК (додатковий розряд при контролі на
парність і непарність, код Хэммінга ), що дозволяє знаходити помилки при
зміні значень окремих бітів даних.

Тестовий контроль здійснюється за допомогою спеціальних тестів для
перевірки правильності роботи ПК або його окремих пристроїв.

Апаратний контроль ведеться автоматично за допомогою збудованого в ПК
обладнання.

Програмно-апаратний контроль включає програмний і апаратний контроль.

ПЗ, що призначене для рішення певних класів завдань користувача,
називають прикладним (application software). Прикладне програмне
забезпечення складається з пакетів прикладних програм (ППП) і прикладних
програм користувача.

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

Відмінною рисою проблемно-орієнтованих ППП є їх порівняно вузька
спрямованість на певне коло розв’язуваних завдань і велика їхня
різноманітність.

Пакети загального призначення (методоорієнтовані пакети) призначені для
рішення типових завдань обробки даних.

Інтегровані ППП — це сукупність функціонально різних програмних модулів,
здатних взаємодіяти між собою шляхом обміну даними через єдиний
користувацький інтерфейс. Областю застосування таких пакетів є в
основному економічна сфера. Інтегровані пакети забезпечують
обчислювальні потреби користувача без звертання до інших програмних
продуктів. У структурі пакета передбачений модуль керування, що
забезпечує переключення між додатками й безконфліктне використання
спільних даних. Сучасні інтегровані пакети містять, як правило, п’ять
функціональних компонентів: табличний процесор; текстовий редактор
(процесор); систему керування базами даних (СУБД); графічний редактор;
комунікаційні засоби.

Одним із представників найпоширеніших інтегрованих пакетів середини 90-х
років є пакет MS Works. У цей час практичне поширення одержав ППП
офісних додатків MS Office, що включає такі додатки, як MS Word, MS
Access, MS Excel, MS PowerPoint і MS Schedule+ і ін.

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

2.1.Еволюція ОС

Перший період (1945 -1955)

Відомо, що комп’ютер був винайдений англійським математиком Чарльзом
Бебіджем наприкінці вісімнадцятого століття. Його «аналітична машина»
так і не змогла по-справжньому заробити, тому що технології того часу не
задовольняли вимогам по виготовленню деталей точної механіки, що були
необхідні для обчислювальної техніки. Відомо також, що цей комп’ютер не
мав ОС. Деякий прогрес у створенні цифрових обчислювальних машин
відбувся після другої світової війни. У середині 40-х були створені
перші лампові обчислювальні пристрої.

Другий період (1955 — 1965)

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

Третій період (1965 — 1980)

Наступний важливий період розвитку обчислювальних машин відноситься до
1965-1980 років. У цей час у технічній базі відбувся перехід від окремих
напівпровідникових елементів типу транзисторів до інтегральних
мікросхем, що дало набагато більші можливості новому, третьому поколінню
комп’ютерів. Для цього періоду характерно також створення сімейств
програмно-сумісних машин. Першим сімейством програмно-сумісних машин,
побудованих на інтегральних мікросхемах, з’явилася серія машин ІBM/360.

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

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

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

Четвертий період (1980 — час сьогодення )

Наступний період в еволюції ОС зв’язаний з появою великих інтегральних
схем (БІС). В ці роки відбулося різке зростання ступеня інтеграції і
здешевлення мікросхем. Комп’ютер став доступний окремій людині, і
наступила ера персональних комп’ютерів.

На ринку ОС домінували дві системи: MS-DOS і UNІ. Однопрограмна
однокористувальницька ОС MS-DOS широко використовувалася для
комп’ютерів, побудованих на базі мікропроцесорів Іntel 8086, а потім
80286, 80386 і 80486. Мультипрограмна загальнокористувальницька ОС UNІХ
домінувала в середовищі «не-інтелівських» комп’ютерів, особливо
побудованих на базі високопродуктивних RіSC-процесорів.

2.2.Класифікація операційних систем

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

а) ОС поділяються на однозадачні й багатозадачні. Однозадачні (DOS)
можуть виконувати в один й той же час не більш однієї задачі, а
багатозадачні (Wіndows 98/МЕ) здатні одночасно керувати декількома
процесами, поділяючи між ними .потужність комп’ютера.

б) Ще один критерій — число користувачів ОС. ОС буває призначена для
обслуговування одного користувача або розрахована на роботу з групою
користувачів одночасно. Прикладом першої може служити усе та ж Wіndows
98/М Е, а другої — Wіndows NT/2000.

в) Розрядність. 16-розрядні ОС (DOS, Wіndows 3.1, Wіndows 3.11) пішли
в минуле з появою 32-розрядних ОС (Wіndows 98/МЕ). 64-розрядних ОС для
домашнього використання поки немає.

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

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

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

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

По основному архітектурному принципі ОС розділяються на мікроядерні і
монолітні. До деякої міри цей розподіл теж умовний, однак можна в якості
прикладу мікроядерної ОС привести ОСРЧ QNX, тоді як у якості монолітної
можна назвати Windows 95/98 чи ОС Linux. Ядро ОС Windows ми не можемо
змінити, нам не доступні його вихідні коди й у нас немає програми для
зборки (компіляції) цього ядра. А от у випадку з Linux ми можемо самі
зібрати ядро, що нам необхідно, включивши в нього ті необхідні програмні
модулі і драйвери, що ми вважаємо за доцільне включити саме в ядро (а не
звертатися до них з ядра).

2.3. Функції ОС та характеристики ОС

Функції ОС

Контроль працездатності устаткування ПК.

Виконання процедури початкового завантаження.

Управління роботою усіх пристроїв ПК.

Управління файловою системою.

Взаємодія користувача з ПК.

Завантаження виконання прикладних програм.

Розподіл ресурсів ПК.

Головні характеристики сучасних ОС.

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

Розвинутий графічний користувальний інтерфейс.

Використання всіх можливостей, які надаються сучасним мікропроцесорам.

Стійкість в роботі і захищеність.

Повна незалежність від апаратури.

Суміжність всіх додатків розроблених для MS-DOS.

До сучасних ОС відносяться:

Windows 90-x

Windows XX

Windows NT-New Technology фірми MS.

OS/2 Warp фірми IBM.

Conic.

2.4. ОС як віртуальна машина

Якби програміст працював безпосередньо з апаратурою комп’ютера, без
участі ОС, то для організації читання блоку даних з диска програмісту
довелося б використовувати більш десятка команд із указівкою безлічі
параметрів: номера блоку на диску, номера сектора на доріжці і т.п. А
після завершення операції обміну з диском він повинний був би
передбачити у своїй програмі аналіз результату виконаної операції. З
огляду на те, що контролер диска здатний розпізнавати більш двадцяти
різних варіантів завершення операції, можна вважати програмування обміну
з диском на рівні апаратури не самою тривіальною задачею. Не менш
обтяжно виглядала б і робота користувача, якби йому для читання файлу з
термінала треба було задавати числові адреси доріжок і секторів.

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

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

2.5. ОС як система керування ресурсами

ОС не тільки надає користувачам і програмістам зручний інтерфейс до
апаратних засобів комп’ютера, але і є механізмом, що розподіляє ресурси
комп’ютера.

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

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

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

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

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

Керування ресурсами включає рішення наступних завдань, що не залежать
від типу ресурсу задач:

планування ресурсу — тобто визначення, якому процесу, коли й у якій
кількості (якщо ресурс може виділятися частинами) варто виділити даний
ресурс;

задоволення запитів на ресурси;

відстеження стану й облік використання ресурсу — тобто підтримка
оперативної інформації при тому, зайнятий чи вільний ресурс і яка частка
ресурсу вже розподілена;

дозвіл конфліктів між процесами.

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

Задача організації ефективного спільного використання ресурсів
декількома процесами є дуже складної, і складність ця породжується в
основному випадковим характером виникнення запитів на споживання
ресурсів. У мультипрограмній системі утворяться черги заявок від
одночасно виконуваних програм до поділюваних ресурсів комп’ютера:
процесору, сторінці пам’яті, до принтера, до диска. ОС організує
обслуговування цих черг по різних алгоритмах: у порядку надходження, на
основі пріоритетів, кругового обслуговування і т.д. Аналіз і визначення
оптимальних дисциплін обслуговування заявок є предметом спеціальної
області прикладної математики — теорії масового обслуговування. Таким
чином, керування ресурсами складає важливу частину функцій будь-якої ОС,
особливо мультипрограмної. На відміну від функцій розширеної машини
більшість функцій керування ресурсами виконуються ОС автоматично і
прикладному програмісту недоступні.

3. Сучасні ОС і середовища

3.1. Сучасні ОС і середовища

На сьогодні найпоширенішими ОС для ПК, робочих станцій і серверів є
наступні: UNIX, MS DOS, OS/2, WINDOWS, LINUX, MAC, VAX/VMS.

Операційна система MS DOS.

На переважній більшості IBM-сумісних ПК в нашій країні до 1995 року
використовувалася ОС MS DOS, яка створена фірмою Microsoft. Ця ОС стала
в 1981 р. базовою системою для комп’ютерів, виробництво яких почала тоді
фірма IBM. На думку спеціалістів по системному математичному
забезпеченню, MS DOS виглядала достатньо примітивно у порівнянні з ОС
великих і міні-ЕОМ, які об’єднують ФС і систему управління в/в.
Популярність і довге життя MS DOS можна пояснити тільки її простотою і
дешевизною. Розроблено понад 7 версій цієї ОС.

Операційна система OS/2.

Задавши тон іншим виробникам ПК IBM PC XT і IBM PC AT, фірма IBM
створила нову серію ПК — сімейство PS/2, які виготовляються нею до
теперішнього часу. Для цієї серії IBM постачає ОС OS/2, розроблену
Microsoft, яка разом з відповідною апаратурою зайняла своє місце серед
ряду технологічних платформ. В OS/2 були зразу вирішені питання
багатозадачного режиму роботи, а MS DOS може запускатися в ній як одна з
задач. Одночасно в OS/2 можуть виконуватися 12 програм, але тільки одна
DOS-програма. Більшість користувачів практично не зауважує переходу від
MS DOS до OS/2, виявляючи тільки додаткові можливості. В цій ОС можливий
також графічний багатовіконний інтерфейс, аналогічний WINDOWS.

Операційна система WINDOWS.

Найпоширенішою ОС для ПК є WINDOWS, створена фірмою Microsoft. На
сьогодні WINDOWS поряд з IBM-сумісними ПК є одною з найпоширеніших
технологічних платформ. WINDOWS у версіях WINDOWS-95, WINDOWS-98,
WINDOWS-2000 — це 32 розрядна багатозадачна ОС.

В цій ОС використовуються:

1)     робочі вікна, призначені для різних ПП,

2)     випливаючі вікна повідомлень програми і отримання реакції
користувача,

3)     діалогові вікна, через які здійснюється основний ввід
інформації в програму.

Яскравою зовнішньою ознакою WINDOWS є багатовіконний графічний
інтерфейс. Вікно — це частина екрану монітора, яка є полем дії програми.
Відображення вводу управляючих команд і інформації в програму, а також
вивід зображень і даних з неї відбувається через вікно. Для позначення
об’єктів, програм, операцій, опцій вибору використовуються піктограми.
Піктограми — це графічні символи, які асоціативно нагадують те, що вони
позначають.

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

Сучасні версії Windows реалізують механізм ВП. Його суть полягає в тому,
що користувачу надається віртуальний (можливий, але реально не існуючий)
адресний простір, що визначається 32-х розрядною довжиною адреси (4
Гбайти) розміщення в пам’яті комп’ютера. В той же час фізична ОП може
бути значно меншою (одиниці — десятки Мбайт). Інформація, що не
поміщається в фізичній ОП, знаходиться на дисковому запам’ятовуючому
пристрої.

Операційна система Windows NT.

З появою 32-розрядних ПК перед Microsoft встала проблема створення ОС,
яка б використовувала усі можливості апаратури, і фірма зробила рішучий
крок, поклавши початок новому сімейству ОС, який можна співставити з
рішенням IBM по випуску сімейства PS/2. В 1993 р. була випущена перша
версія системи Windows NT з графічним інтерфейсом оболонки Windows 3.1.
Windows NT дозволяє використовувати ПП, написані для DOS, для текстового
режиму OS/2 і для стандартного інтерфейсу користувача у більшості
реалізацій UNIX, що називаються POSIX.

Операційна система UNIX.

ОС UNIX, була створена спеціалістами Bell Laboratories компанії AT&T. Її
прототип появився в 1969 р. для комп’ютерів PDP-7 фірми Digital, потім
вона була перенесена на комп’ютери інших типів, а з 1980 р. і на ПК. В
1979 р. на обчислювальній машині VAX була реалізована версія UNIX з
можливостями ВП. Сьогодні існує велика кількість реалізацій цієї ОС
практично для кожної апаратної платформи, і UNIX стала своєрідним
стандартом відкритих систем, забезпечуючи сумісність програмних
продуктів, написаних в її середовищі. ОС UNIX домінує на ринку робочих
станцій.

Операційна система Linux.

Linux — порівняно молода ОС, що з’явилася на світ в 1991 році. Ядро
системи створив Лінус Торвальдс. Популярність Linux почала швидко
зростати, тому що на відміну від коду інших ОС вона була цілком
відкритою і могла модифікуватися. Більше того, Linux, що задовольняла
стандарт ОС UNIX, мала серйозні переваги перед домінуючою на ринку
IBM-сумісних комп’ютерів ОС MS-DOS, яка не дозволяла працювати в
багатозадачному режимі і не розповсюджувалась на машини з процесором,
відмінним від Intel. Нарешті, Linux поширювалася безплатно, тоді як
більшість версій того ж UNIX, по своїх можливостях не настільки вже
переважали ОС Торвальдса, коштували дорого.

3.2. Операційні мережеві системи.

Структурне представлення ОС.

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

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

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

Клієнтська частина виконує розпізнавання і перенаправлення в мережу
запити до віддалених ресурсів від додатків і користувачів, при цьому
запит поступає від додатків в локальній формі, а передається в мережу в
іншій формі, відповідній вимогам сервера. З допомогою комунікаційних
засобів відбувається обмін повідомленнями в локальній мережі (адресація
і буферизація повідомлень, вибір маршруту передачі повідомлення,
надійність передачі та ін.).

Сучасні мережеві ОС — це багатофункціональні системи, що здатні
одночасно підтримувати роботу сервера і широкого набору мережних служб.
Для локальних мереж, що базуються на платформі Intel найчастіше
використовуються такі ОС: як Novell NetWare і Microsoft Windows NT. Якщо
в мережі встановлений хоча б один виділений сервер, тоді рекомендується
використання ОС Microsoft Windows NT. Вона вважається універсальнішою,
тобто добре масштабується і не складна в адмініструванні для невеликих
мереж. Її недоліком можна вважати високі вимоги до обчислювальних
ресурсів (серверу та робочих станцій). ОС Novell NetWare традиційно
сильні в галузях підтримки мережевих служб, хоча різностороння підтримка
прикладних програмних засобів була їх слабкою стороною.

Враховуючи, що мережі з невеликою кількістю робочих місць достатньо
поширені, компанія Novell розробила для них мережну операційну систему
NetWare Lite, в якій кожен вузол може бути, як клієнтом, так і сервером.
В зв’язку з необхідністю забезпечувати одночасну обробку запитів великої
кількості клієнтів і надійний захист даних від несанкціонованого
доступу, сервер повинен працювати під управлінням спеціалізованої ОС,
призначеної для виконання таких задач. В нашій країні отримали
розповсюдження ОС NetWare Lite фірми Novell для мережі, призначені для
підтримки систем малого бізнесу (невеликі офіси, лікарні, брокерські
контори, ощадні банки і т.п.). Це децентралізовані мережеві системи з
рівними правами всіх мережевих станцій. В мережу з’єднуються від 2 до 25
користувачів не на серверній основі. Кожна робоча станція може бути
одночасно сервером для одної або декількох робочих станцій. Перевагою
реалізації такої системи є те, що мережа може мати стільки серверів,
скільки потрібно, при чому кількість користувачів (клієнтів) і серверів
може змінюватися з дня в день у відповідності з потребами робочої групи.

В локальній обчислювальній мережі з розвиненою архітектурою функції
управління виконує мережева ОС, встановлена на потужнішому, ніж робочі
станції, комп’ютері — файловому сервері. Серверні мережі можна розділити
на мережі середнього класу (до 100 робочих станцій) і потужні
(корпоративні) локальні мережі, які об’єднують до 250 робочих станцій і
більше. Основним розробником мережевих програмних продуктів для
серверних локальних обчислювальних мереж є фірма Novell. Сімейство
основних мережевих ОС цієї фірми містить продукти NetWare декількох
версій.

Однорангові та дворангові мережеві ОС.

Від того, як розподілені функції між комп’ютерами локальної мережі,
мережеві ОС, як і сама мережа поділяються на однорангові і дворангові (з
виділеними серверами).

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

Типи мережевих ОС.

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

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

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

Під вертикальною масштабовістю розуміють можливість підтримки прцесорів,
пам’яті і дискового простору в корпусі одного ПК. Горизонтальна
масштабованість дозволяє об’єднати декілька комп’ютерів таким чином, щоб
разом вони перевищували окремі складові. Для роботи в Internet сучасні
мережеві ОС повинні підтримувати DNS, DHCP, поштові служби і
Web-сервери.

3.3. Програми ОС.

Програми ОС постійно (резидентно) займають в ОП об’єм, встановлений при
конфігурації системи. Решта частин ОС по мірі необхідності викликаються
із зовнішньої на МД. ОС забезпечує здійснення в обчислювальній системі
наступних процесів:

— обробка задач;

— роботи системи в режимі діалогу і квантування часу;

— роботи системи в реальному масштабі часу в складі
багатопроцесорних і багатомашинних комплексів;

— зв’язок оператора із системою;

— протоколювання ходу виконання обчислювальних робіт;

— обробки даних, які поступають по каналах зв’язку;

— функціонування пристроїв в/в;

— використання широкого набору засобів відладки і тестування програм;

— планування проходження задач у відповідності з їх пріоритетами;

— ведення обліку і контролю за використанням даних, програм і ресурсів
ЕОМ.

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

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

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

Програми управління даними забезпечують способи організації,
ідентифікації, зберігання, каталогізації і вибірки оброблюваних даних.
Ці програми управляють в/в даних з різною організацією, об’єднанням
записів в блоки і розділенням блоків на записи, обробкою міток томів і
наборів даних.

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

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

ОС представляють програмі користувача можливість дізнатися текучі дату і
час. За початок підрахунку, наприклад, в MS-DOS прийнята дата 1 січня
1980р. 0 год. 0 хв. 0 сек. по Грінвічу, в UNIX 1 січня 1970р. Системи
представляють можливість виміру часових інтервалів коротших 1 секунди з
допомогою спеціальних системних викликів. ОС може переводити дату і час
з внутрішнього числового представлення в символьне (для виведення,
наприклад, на термінал ), місцевий час в час по Грінвічу і навпаки,
представляти інформацію про часовий пояс, літній та зимовий час.

3.4. Особливості сучасного етапу розвитку ОС

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

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

Сучасним ОС властива багатоплатформенністъ, тобто здатність працювати на
зовсім різних типах комп’ютерів. Багато ОС мають спеціальні версії для
підтримки кластерних архітектур, що забезпечують високу продуктивність.
Виключенням поки є ОС NetWare, усі версії якої розроблені для платформи
Intel, а реалізації функцій NetWare у вигляді оболонки для інших ОС,
наприклад NetWare for AIX, успіху не мали.

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

3.5. Вимоги до архітектури сучасної ОС

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

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

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

Сумісність. Існує трохи «довгоживучих» популярних ОС (різновиду UNIX,
MS-DOS, Windows 3.x, Windows NT, OS/2), для яких напрацьована широка
номенклатура додатків. Для користувача, що переходить по тим чи іншим
причинам з однієї ОС на іншу, існує можливість запуску в новій ОС
звичного додатка. Якщо ОС має засоби для виконання ПП, написаних для
інших ОС, то про неї говорять, що вона має сумісність з цими ОС. Варто
розрізняти сумісність на рівні двійкових кодів і сумісність на рівні
вихідних текстів. Поняття сумісності включає також підтримку
користувацьких інтерфейсів інших ОС.

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

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

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

Проблемно орієнтовані

Загального призначення

Пакети прикладних програм

Операційні системи

Сервісні системи

Інтегрування

Прикладні програми користувача

Операційні середовища

Системи технічного обслуговування

Програмно інструментальні засоби

Оболонки

Утиліти

Похожие записи