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


Коротка історія розвитку операційних систем

Виникнення та основні етапи розвитку операційних систем

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

BIOS – перший крок до створення операційних систем

Незабаром ЕОМ почали успішно застосовувати для вирішення інших завдань: аналіз текстів і вирішення складних прикладних завдань з галузі фізики. Коло споживачів послуг ЕОМ дещо розширилося. Однак, для вирішення кожної конкретного завданнятоді необхідно було написати заново як код, реалізуючий алгоритм рішення, а й процедури вводу-вывода та інші процедури управління процесом обчислення. Істотні витрати такого підходу незабаром стали очевидними:
- код процедур введення виведення зазвичай є досить об'ємним і складним у налагодженні (нерідко він виявлявся найбільшим фрагментом програми), а у разі помилки у процедурі введення-виведення могли бути легко втрачені результати тривалих та дорогих обчислень;
- необхідність щоразу заново писати досить великий допоміжний кодзатягує час та підвищує трудомісткість розробки прикладних програм.
Тому для вирішення зазначених проблем були створені спеціальні бібліотеки процедур введення-виведення (BIOS – Base Input-Output System). Ретельно налагоджені та ефективні процедури з BIOS можна було легко використовувати з будь-якими новими програмами, не витрачаючи час та сили на розробку та налагодження стандартних процедур для введення та виведення даних.
Таким чином, з появою BIOS програмне забезпечення розділилося на системне та прикладне програмне забезпечення. Причому прикладне програмне забезпечення безпосередньо орієнтоване на вирішення корисних завдань, тоді як системне програмне забезпечення орієнтоване виключно на підтримку роботи та спрощення розробки прикладного програмного забезпечення.
Проте, BIOS ще є операційної системою, т.к. не виконує найважливішу для будь-якої операційної системи функцію – управління процесом обчислень прикладної програми. Крім того, BIOS не забезпечує й інших важливих функцій операційної системи – зберігання та запуск прикладних програм. BIOS та бібліотеки математичних процедур, які з'явилися приблизно в той же час, просто полегшували процес розробки та налагодження прикладних програм, робили їх більш простими та надійними. Проте створення BIOS стало першим кроком на шляху до створення повноцінної операційної системи.

Система пакетної обробки – прообраз сучасної операційної системи

У міру подальшого розвитку електронно-обчислювальних машин, з розширенням сфери їх застосування, на перший план швидко постала проблема недостатньої ефективності використання дорогої ЕОМ.
У 50-ті роки персональних комп'ютерів ще не було, і будь-яка ЕОМ була дуже дорогою, громіздкою та рідкісною машиною. Для доступу до неї з боку різних наукових установ складався спеціальний розклад. До зазначеного часу програміст мав прийти до машинного залу, завантажити своє завдання з колоди перфокарт, дочекатися завершення обчислень та роздрукувати результати.
При використання жорсткогорозкладу, якщо програміст не встигав закінчити розрахунки за відведений час, він все одно мав звільнити машину, тому що для неї було заплановано нове завдання. Але це означає, що машинний час було витрачено марно – результатів не отримано! Якщо ж з якоїсь причини розрахунки завершувалися раніше за очікуваний термін, то машина просто простоювала.
Щоб уникнути втрат процесорного часу, неминучих під час роботи за розкладом, було розроблено концепцію пакетної обробки завдань, сутність якої пояснює наступний малюнок (Малюнок 1).

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

Вперше пакетна система була розроблена в середині 50-х компанією General Motors для машин IBM 701. Очевидно, це була перша операційна система. Основна ідея пакетної обробки полягає в тому, щоб керування завантаженням програм та роздруківку результатів доручити малопотужним та відносно дешевим машинам-сателітам, які підключаються до великої (основної) машини через високошвидкісні електронні канали. При цьому велика ЕОМ тільки вирішуватиме завдання, отримане від машини-сателіту, і після завершення завдання передавати результати по високошвидкісному каналу іншій машині-сателіту для роздруківки.
Машини сателіти працюють самостійно, звільняючи центральний процесор від керування повільними зовнішніми пристроями. При цьому роздрук результатів попередньої задачі може відбуватися в ході вирішення поточного завдання, і одночасно в електронну пам'ять машини-сателіту може зчитуватися наступне завдання. Така організація системи пакетної обробки завдань відома як проста пакетна система.
Системи пакетної обробки завдань, реалізовані у роки, стали прообразом сучасних операційних систем. Вони вперше було реалізовано програмне забезпечення, використовуване керувати виконанням прикладних програм.
Зауважимо тут також, що описаний підхід до побудови H/W цілком зберігся до нашого часу. Сучасні периферійні пристрої, і насамперед це накопичувачі на жорстких магнітних дисках, здатні передавати великі обсяги даних без участі. центрального процесора. Забігаючи вперед, зазначимо, що тільки завдяки такій властивості апаратури комп'ютера існують та ефективно працюють сучасні багатозадачні операційні системи.

Багатозадачні операційні системи

Перші багатозадачні операційні системи з'явилися торік у 60-ті роки результаті подальшого розвитку систем пакетної обробки завдань. Основним стимулом до появи стали нові апаратні можливості ЕОМ.
По-перше, з'явилися нові ефективні носії інформації, на яких можна було легко автоматизувати пошук необхідних даних: магнітні стрічки, магнітні циліндри та магнітні диски. Це, у свою чергу, змінило структуру прикладних програм – тепер вони могли в процесі роботи завантажити додаткові дані для обчислень чи процедур із стандартних бібліотек.
Зауважимо тепер, що проста пакетна система, прийнявши завдання, обслуговує її аж до повного завершення, а це означає, що під час завантаження додаткових даних або коду процесор простоює, при цьому вартість простою процесора зростає зі зростанням його продуктивності, оскільки більше продуктивний процесорміг би зробити за час простою більшу кількість корисної роботи.
По-друге, продуктивність процесорів істотно зросла, і втрати процесорного часу у простих пакетних системах стали неприпустимо великі.
У зв'язку з цим логічним кроком стала поява багатозадачних пакетних систем. Необхідною умовою створення багатозадачних систем є достатній обсяг пам'яті комп'ютера. Для багатозадачності обсяг пам'яті повинен бути достатнім для розміщення, Крайній мірі, дві програми одночасно.
Основна ідея багатозадачності цілком очевидна - якщо поточна програма припиняється в очікуванні завершення введення-виведення, то процесор переходить до роботи з іншою програмою, яка готова до виконання.
Однак, перехід до іншого завдання повинен бути зроблений так, щоб зберегти можливість повернутися до кинутого завдання через деякий час і продовжити роботу з точки зупинки. Для реалізації такої можливості в операційну систему потрібно було запровадити спеціальну структуру даних, що визначає поточний станкожного завдання – контекст процесу. Контекст процесу визначено в будь-якій сучасній операційній системі таким чином, щоб даних з нього було достатньо для повного відновленняроботи перерваного завдання.
Поява багатозадачності вимагала реалізації у складі операційної системи відразу кількох фундаментальних підсистем, які також представлені у будь-якій сучасній операційній системі. Перерахуємо їх:
1) підсистема управління процесорами – визначає яке завдання й у який час слід передати процесору обслуговування;
2) підсистема управління пам'яттю - забезпечує безконфліктне використання пам'яті відразу кількома програмами;
3) підсистема управління процесами – забезпечує безконфліктне поділ ресурсів комп'ютера (наприклад, магнітних дисків чи загальних підпрограм) відразу кількома програмами.
В рамках цього курсу буде детально розглянуто реалізацію зазначених підсистем у сучасних операційних системах.
Майже відразу після появи багатозадачних операційних систем було відмічено, що багатозадачність корисна не тільки для підвищення коефіцієнта використання процесора. Наприклад, на основі багатозадачності можна реалізувати розрахований на багато користувачів режим роботи комп'ютера, тобто. підключити до нього кілька терміналів одночасно, причому для користувача за кожним терміналом буде створено повну ілюзію, що він працює з машиною один. До епохи масового використання персональних комп'ютерів, розрахований на багато користувачів режим був основним режимом роботи практично для всіх ЕОМ. Повсюдна підтримка розрахованого на багато користувачів режиму різко розширила коло користувачів комп'ютерів, зробила його доступним для людей різних професій, що в кінцевому підсумку і призвело до сучасної комп'ютерної революції і появи ПК.
При цьому в залежності від алгоритмів, покладених в основу роботи підсистеми управління процесорами, операційна система, а з нею і вся ЕОМ, набуває різних властивостей. Наприклад, багатозадачна пакетна система, що перемикається в інше завдання лише за неможливості продовжити поточну, здатна забезпечити максимальну пропускну здатність комп'ютера, тобто. максимізувати середнє число завдань, що вирішуються в одиницю часу, але через непередбачуваність часу відповіді багатозадачна пакетна система зовсім не підходить для інтерактивної системи, що негайно реагує на введення користувача.
Багатозадачна система з примусовим витісненням завдання після закінчення кванта часу ідеально підходить для інтерактивної системи, але не забезпечує максимальної продуктивностідля обчислювальних завдань.
Під час вивчення теми " управління процесорами " у межах даного курсу будуть розглянуті особливості багатьох конкретних алгоритмів, показано компромісні рішення, придатні універсальних операційних систем, орієнтованих рішення широкого кола завдань.
Як висновок відзначимо, що поява багатозадачності була викликана бажанням максимально використовувати процесор, виключивши по можливості його простої, і в даний час багатозадачність є невід'ємною якістю будь-якої сучасної операційної системи.

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

Поява системи віртуальної пам'яті наприкінці 60-х стала останнім кроком на шляху до сучасних операційних систем. Поява надалі графічних інтерфейсів користувача і навіть підтримка мережевої взаємодії вже не були настільки революційними рішеннями, хоча і істотно вплинули і на розвиток апаратури комп'ютерів, і на розвиток самих операційних систем.
Поштовхом до появи віртуальної пам'яті стали складності управління пам'яттю в багатозадачних операційних системах. Основні проблеми тут такі:
- Програми, як правило, вимагають для свого розміщення безперервної області пам'яті. У ході роботи, коли програма завершується, вона звільняє пам'ять, але цей регіон пам'яті далеко не завжди підходить для розміщення нової програми. Він або занадто малий, і тоді для розміщення програми доводиться шукати ділянку в іншій області пам'яті, або занадто велика, і тоді після розміщення нової програми залишиться фрагмент, що не використовується. При роботі операційної системи, незабаром утворюється дуже багато таких фрагментів - сумарний обсяг вільної пам'яті великий, але розмістити нову програму не вдається, оскільки немає жодної досить довгої безперервної вільної області. Таке явище називається фрагментацією пам'яті.
- У випадку, коли кілька програм одночасно перебувають у спільній пам'яті, помилкові чи навмисні дії з боку будь-якої програми можуть порушити виконання інших програм, крім того, дані або результати роботи одних програм можуть бути несанкціоновано прочитані іншими програмами.
Як буде показано в рамках даного курсу далі, віртуальна пам'ять не тільки ідеально вирішує подібні проблеми, але й надає нові можливості для подальшої оптимізації роботи всієї обчислювальної системи.
Вирішальною передумовою появи системи віртуальної пам'яті став механізм свопінгу (від англ. to swap – змінювати, обмінювати).
Ідея свопінгу полягає в тому, щоб вивантажувати з ОЗП у вторинну пам'ять (на магнітний диск) програми, тимчасово зняті з виконання, і завантажувати їх назад у ОЗУ, коли вони стають готовими до подальшого виконання. Таким чином, відбувається постійний обмін програмами між ОЗП та вторинною пам'яттю.
Свопінг дозволяє звільнити місце в оперативній пам'яті для завантаження нових програм за рахунок виштовхування у вторинну пам'ять програм, які не можуть виконуватися на даний момент. Свопінг досить ефективно вирішує проблему нестачі оперативної пам'яті та фрагментації, але не вирішує проблеми захисту.
Віртуальна пам'ять також заснована на виштовхуванні частини програм і даних з оперативної пам'яті на вторинну пам'ять, але реалізується набагато складніше і вимагає обов'язкової підтримки апаратних засобів процесора. Конкретні механізми роботи віртуальної пам'яті будуть розглянуті надалі.
Зрештою, система віртуальної пам'яті організує власний адресний простір для кожної запущеної програми, Який називається віртуальний адресний простір. При цьому ділянки віртуального адресного простору, на думку операційної системи, можуть відображатися або на дільниці оперативної пам'яті, або на ділянки вторинної пам'яті (див. рис. 2).


Малюнок 2 Відображення віртуального адресного простору

При використанні віртуальної пам'яті програми не зможуть помилково або навмисно звернутися до даних інших програм або самої операційної системи – підсистема віртуальної пам'яті гарантує захист даних. З іншого боку, невикористовувані нині області віртуального адресного простору відображаються у вторинну пам'ять, тобто. дані з цих областей зберігаються над ОЗУ, а вторинної пам'яті, що вирішує проблему нестачі оперативної пам'яті. Нарешті області віртуального адресного простору можуть відображатися на довільні ділянки ОЗУ, при цьому сусідні ділянки віртуального адресного простору не обов'язково повинні бути сусідніми в ОЗУ, що вирішує проблему фрагментації.
Як вже було сказано, віртуальна пам'ять вперше була використана в реальних операційних системах наприкінці 60-х, але широкого поширення віртуальна пам'ять набула лише у 80-х (UNIX, VAX/VMS), а повсюдно стала застосовуватись у персональних комп'ютерах лише в середині 90-х. -Х років (OS/2, Linux, Windows NT). В даний час, віртуальна пам'ять, поряд із багатозадачністю, є невід'ємною частиною практично будь-якої сучасної операційної системи.

Графічні інтерфейси користувача

З кінця 80-х, персональні комп'ютери набули повсюдного поширення, і до спільноти користувачів ПК виявилося залучено безліч людей різних спеціальностей. Чимало їх ми мали спеціальної комп'ютерної підготовки, але хотіли використовувати комп'ютер своєї роботи, т.к. використання комп'ютера давало відчутні переваги у справі.
З іншого боку, ускладнення операційних систем та прикладних програм зробило управління ними досить складним завданням навіть для фахівців, і інтерфейс командного рядка, який на той час став стандартом для операційних систем, перестав задовольняти практичні запити.
Зрештою, з'явилися нові апаратні можливості: кольорові графічні монітори, високопродуктивні графічні контролери та маніпулятори типу миша.
Таким чином, наприкінці 80-х склалися всі умови для повсюдного переходу на графічний інтерфейс користувача: з одного боку виникла потреба у більш простому та зручному механізмі управління комп'ютером, з іншого боку, розвиток апаратних засобів дозволяв побудувати такий механізм.
Основна ідея графічного інтерфейсу користувача полягає в наступному:
- користувачу, залежно від поточної ситуації, пропонується вибрати один із кількох альтернативних варіантів подальших дій;
- можливі варіанти дій користувача представлені на екрані ЕОМ у вигляді текстових рядків (меню) або схематичних малюнків (піктограм);
- для вибору одного з варіантів подальших дій достатньо поєднати на екрані монітора покажчик (курсор) з елементом меню або піктограмою та натиснути наперед певну клавішу (зазвичай це<пробел>, <ввод>або кнопка мишки), щоб поінформувати систему про зроблений вибір.
Перший графічний інтерфейс розробили 81 року у компанії Xerox. Кажуть, що відвідування главою компанії Microsoft Білом Гейтсом компанії Xerox і знайомство з її розробками в області графічних інтерфейсів, спонукали Microsoft на створення власних графічних інтерфейсів користувача.
В даний час найбільш досконалим графічним інтерфейсом володіє, мабуть, операційні системи сімейства Windows, ці графічні інтерфейси є стандартами де-факто для графічних інтерфейсів користувача.
Використання графічного інтерфейсу виявилося настільки простим та інтуїтивно зрозумілим, що комп'ютери в даний час стали ефективно використовувати у своїй роботі люди, які навіть не мають уявлення про архітектуру самого комп'ютера, операційної системи чи прикладної програми.
Зрештою, поява графічних інтерфейсів користувача у складі операційних систем і прикладних програм вплинула на комп'ютеризацію сучасного суспільства.

Вбудована підтримка мережі

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

Історія найпоширеніших операційних систем

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

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

Проект операційної системи Multics

У проекті Multics період 1965 – 1969 гг. спільно брали участь компанії Bell Labs та General Electric. Метою проекту Multics було створення нової розрахованої на багато користувачів багатозадачної інтерактивної операційної системи, що поєднує зручність використання з потужною і ефективною системоюуправління ресурсами. В основу Multics було покладено такі технічні рішення:
- віртуальна пам'ять із сегментно-сторінковою організацією, яка контролює права доступу на запис, читання або виконання для кожного сегменту;
- централізована файлова система, що забезпечує організацію даних, що навіть знаходяться на різних фізичних пристроях, у вигляді єдиної деревоподібної структури каталогів/файлів;
- Відображення вмісту файлу у віртуальний адресний простір процесу з використанням механізмів керування віртуальною пам'яттю.
Усі ці рішення характерні й у сучасних операційних систем. Проте проект Multics не було завершено. Керівництво компанії Bell Labs прийняло рішення про вихід із проекту, вважаючи подальше фінансування проекту недоцільним, оскільки великі кошти, які вже вкладені в проект, не приносили віддачі.
Незважаючи на дострокове припинення, в ході проекту Multics було визначено базові принципи управління ресурсами та архітектури операційних систем, які успішно використовуються дотепер, а фахівці, які беруть участь у проекті, набули безцінного досвіду. Серед учасників проекту Multics були Кен Томпсон та Денніс Рітчі, майбутні автори першої версії UNIX.

Виникнення операційної системи UNIX

Після припинення проекту Multics, Кен Томпсон, Денніс Рітчі та деякі інші співробітники Bell Labs продовжили дослідницьку роботу в галузі операційних систем і незабаром запропонували ідею вдосконаленої файлової системи. За щасливим збігом обставин, компанія Bell Labs на той час відчувала гостру потребу в зручних і ефективних засобахведення документації, і нова файлова система могла тут виявитися корисною.
У 1969 Кен Томпсон реалізував на машині PDP-7 операційну систему, що включає нову файлову систему, а також спеціальні засоби управління процесами і пам'яттю, що дозволяють працювати на одній машині PDP-7 відразу двом користувачам в режимі поділу часу. Першими користувачами нової ОС стали співробітники патентного відділу Bell Labs.
Брайан Керніган запропонував назвати нову систему UNICS - Uniplexed Information and Computing System. Назва сподобалася розробникам, частково ще й тому, що нагадувала Multics. Незабаром назву почали записувати як UNIX – вимовляється також, але запис коротше однією літеру. Ця назва дійшла до теперішнього часу.
У 1971 році, після перенесення UNIX на PDP-11, було випущено першу редакцію документації, і нова операційна система з'явилася вже офіційно.
Перша редакція UNIX була написана на асемблері, що накладало певні труднощі при перенесенні операційної системи на інші платформи, тому для роботи над другою редакцією UNIX Кен Томпсон розробив власну мову програмування B. Друга редакція вийшла в 1972 році і містила програмні канали, що дозволяють встановлювати взаємодію між програмами, що одночасно виконуються на ЕОМ.
Поява операційної системи, написаної не так на асемблері, було революційним кроком у сфері системного програмування, але мову B містив у собі ряд обмежень, які стримують його застосування. Тому в 1973 Денніс Рітчі розробив мову C, і операційна система була переписана новою мовою.
1975 року з'явилася перша комерційна версія UNIX, відома як UNIX v.6 і UNIX почала свою тріумфальну ходу світом.

Основні етапи розвитку UNIX

1976. В університеті м. Берклі склалася група студентів та професорів, яка серйозно зайнялася системою UNIX. Згодом групою університету Берклі заснувала свою галузь розвитку ОС UNIX – BSD UNIX (Berkeley Software Distribution). У галузі BSD вперше з'явилися такі відомі компоненти UNIX, як текстовий редактор vi, стек протоколів TCP/IP, сторінковий механізм у системі керування віртуальною пам'яттю.
1977. Перший досвід перенесення UNIX на іншу апаратну платформу (відмінну від PDP-11). В університеті Воллонгонга в Австралії професор Джюріс Рейндфельдс частково переніс UNIX на 32-розрядну машину.
1978. Томпсон і Рітчі в Bell Labs здійснили повне перенесення UNIX на 32-розрядну машину. Перенесення супроводжувалося суттєвими змінами організації системи, які дозволили спростити наступні переноси UNIX інші платформи. Одночасно мова C була розширена практично до сучасного стану.
1978. Спеціально для підтримки UNIX у Bell Labs створено підрозділ USG (UNIX Support Group).
1982. USG випустила UNIX System III, яка акумулювала найкращі рішення, представлені в різних версіях UNIX відомі на той час. Вперше представлені іменовані програмні канали.
1983. Вихід Unix System V. У ній вперше представлені семафори, засоби поділу пам'яті та черги повідомлень, а для підвищення продуктивності використано кешування даних.
1984. USG перетворена на лабораторію розвитку UNIX – USDL (UNIX System Development Laboratories). Випущено версію UNIX System V Release 2 (SVR2). У системі реалізована можливість блокування файлів та копіювання спільно використовуваних сторінок пам'яті під час запису.
1986. Поява графічного інтерфейсу UNIX-подібних операційних систем – графічна система X Windows.
1987. USDL випустила UNIX System V Release 3 (SVR3). Вперше представлені сучасні можливості міжпроцесної взаємодії, поділ віддалених файлів, обробка сигналів
1989. Вихід UNIX System V Release 4 (SVR4). UNIX вперше реалізована на основі концепції мікроядра. Введена підтримка процесів реального часу та легковажних процесів.

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

В даний час операційна система Linux переживає етап бурхливого розвитку. І хоча це молода операційна система, вік якої лише трохи більше 10 років, вона вже встигла здобути визнання багатьох тисяч користувачів.
Біля витоків операційної системи Linux стояв Лінус Торвальдс, тоді студент-першокурсник, який наприкінці 1991 р. помістив в Інтернет розроблену ним мікро операційну систему Linux і запросив усіх бажаючих взяти участь у розвитку цієї системи. В результаті до проекту підключилося безліч талановитих програмістів, і спільними зусиллями великої кількості людей, які взаємодіють через Інтернет, було розроблено досконалу операційну систему.
У основу Linuxлягли деякі рішення з UNIX BSD 4.2, і тому Linux зазвичай розглядають як самостійну галузь UNIX-подібних операційних систем.
В даний час Linux розвивається в рамках технології Open Source– відкритих вихідних текстів, доступних усім охочим. Будь-яка людина може розробити та надіслати свої зміни або доповнення до Linux, а інсталяцію Linux можна отримати безкоштовно через Інтернет.
В даний час Linux також розділився на кілька самостійних гілок, між якими ще багато спільного, але є відмінності в реалізації деяких компонентів, як в ядрі системи, так і в різних утилітах.
Операційна система Linux зараз розглядається багатьма людьми як серйозна альтернатива операційним системам сімейства Windows. Система Linux стійко працює та забезпечує високу продуктивність. Єдине, що все ще стримує поширення Linux, це недостатня кількість офісних програм, таких як текстові процесори або електронні таблиці. Але в Останнім часомкількість таких програм неухильно зростає, а якість їхніх інтерфейсів користувача наближається до звичного для користувачів Windows.
Ще одна проблема системи Linux полягає в тому, що вона зазвичай відстає за допомогою новітніх апаратних засобів, але це теж має своє пояснення. Розробники цих апаратних засобів завжди надають провідним виробникам операційних систем інформацію про них ще до появи даного апаратного засобуна ринку, тому, наприклад, Windows зазвичай забезпечує підтримку нових апаратних засобів відразу ж за їх появу на ринку. Авторитет системи Linux серед розробників апаратних засобів неухильно зростає, тому можна сподіватися, що проблема підтримки апаратних засобів швидко вирішиться.

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

В даний час сімейство операційних систем Windows - це найбільш масові операційні системи для персональних комп'ютерів. Всі ці операційні системи мають дуже схожий (і дуже досконалий!) графічний інтерфейс користувача, але значно різняться за внутрішнім будовою.
У сімействі Windows, операційні системи Windows 95/98/Me представляють галузь споживчих операційних систем, орієнтованих, перш за все, на домашнє використання, а система Windows XP в першу чергу орієнтована на 64-бітну платформу, і в 32-бітній реалізації відрізняється від Windows 2000 переважно інтерфейсом.
Сучасна операційна система Windows 2000 є типовою багатозадачною операційною системою, що підтримує віртуальну пам'ять, файлову систему, мережу, графічний інтерфейс користувача, мультимедійні засоби. Вона прямо походить від Windows NT і практично не має нічого спільного з операційною системою MS-DOS, поширеною близько десятиліття тому. Тим не менш, розвиток операційних систем Microsoftвідбувалося послідовно, і їхню історію найлогічно почати саме від DOS.
1983. Виходить операційна система MS-DOS 2.0, що включає підтримку накопичувача на жорсткому диску файлової системи з ієрархічною структурою імен файлів, завантажуваних драйверів пристроїв. Надалі всі версії Windows, аж до Windows NT працювали як надбудова над DOS версії не нижче 2.0, використовуючи його файлову систему і системні функції для роботи з апаратурою комп'ютера.
1985. Виходить перша версія Windows – Windows 1.01. Windows ще не є повноцінною операційною системою і вимагає для своєї роботи операційну систему. систему DOS 2.0. Система Windows 1.01 підтримує вікна, що тільки не перекриваються, і дозволяє користувачам перемикатися між програмами без їх перезапуску. До моменту появи Windows 1.01, на ринку вже представлено кілька графічних оболонок для DOS, проте всі вони, як і Windows, не користуються особливою популярністю через відсутність програм. Крім того, робота в вікнах, що не перекриваються, незручна.
1987. Виходить версія Windows 2.0, що підтримує вікна, що перекриваються. Одночасно з виходом Windows 2.0 на ринку з'являється електронна таблиця Microsoft Excel та текстовий процесор Word 1.0 – по-справжньому зручне програмне забезпечення для Windows. Завдяки зручному графічному інтерфейсу та наявності корисних прикладних програм, версія Windows 2.0 стає популярною, за півроку продано мільйон копій.
1988. Виходить версія Windows 2.1, що підтримує розширену пам'ять на процесорі 80286 та багатозадачність на процесорі 80386. Для цієї версії стає обов'язковою наявність у складі комп'ютера накопичувача на жорсткому магнітному диску (до цього достатньо було дискет).
1990. Виходить версія Windows 3.0. Вона запускається в захищеному режимі процесора і підтримує свопінг для програм та даних, що базується на дескрипторах блоків пам'яті. При цьому, поки дані з деякого блоку пам'яті не потрібні, система на власний розсуд переміщатиме цей блок у пам'яті і навіть скидати на диск його дані. Але коли ці дані знадобляться будь-якій програмі, вона повинна вказати цю систему і передати їй дескриптор блоку пам'яті для ідентифікації необхідного блоку (при виділенні блоку пам'яті система повертає його дескриптор). Отримавши вимогу доступу до пам'яті, система блокує даний блоку пам'яті та передає додатку покажчик на початок блоку. Система більше не може переміщати цей блок пам'яті, поки програма не проінформує її, що звернення до даних із цього блоку пам'яті більше не потрібне. Починаючи з версії Windows 3.0, програми MS-DOS можуть запускатися у вікні.
1992. Виходить версія Windows 3.1, яка є просто подальше вдосконалення Windows 3.0, але це перша версія Windows, що набула широкого поширення в Росії. Незабаром Windows 3.1 стає найпопулярнішою за кількістю інсталяцій системою США і утримує першість до 1997 року.
1993. Виходить версія Windows 3.11, доповнена підтримкою мережі (електронна пошта, спільний доступ до файлів, робочі групи).
1993. Виходить операційна система Windows NT (NT – New Technology) – перша повноцінна операційна система сімейства Windows, яка вимагає своєї роботи базису як MS-DOS. Для роботи Windows NT потрібний процесор не нижче 80386, в ній реалізована повноцінна віртуальна пам'ять, витісняюча багатозадачність, нова файлова система. Починаючи з Windows NT, розділилися споживча та професійна гілки.
1995. Виходить операційна система Windows 95, будучи подальшим розвитком Windows 3.11, вона стає першою споживчою версією Windows, яка не вимагає для своєї роботи DOS. У Windows 95 вперше представлений новий графічний інтерфейс користувача, дуже зручний, інтуїтивно зрозумілий, він виводить Windows на перше місце в світі за зручністю використання та якістю інтерфейсу користувача.
1996. Виходить операційна система Windows NT4. Вона є подальшим розвитком Windows NT і отримує користувальницький інтерфейс Windows 95. Незабаром операційна система Windows NT4 стане однією з найпопулярніших для професійної роботи.
2000. Виходить операційна система Windows 2000. Вона переважно успадкувала внутрішню архітектуру Windows NT, але було запроваджено низку додаткових сервісів, наприклад, підтримка розподілених обчислень.
2000. Виходить операційна система Windows Me, яка є подальшим розвитком Windows 95/98. Однак оголошено, що вона стане останньою споживчою версією Windows. Споживча гілка, що відокремилася в 1993 році, знову зливається з професійною, і далі розвиватиметься єдина гілка Windows XP.
і т.д. і т.п.
2006. Vista

Історія ОС налічує приблизно півстоліття. Вона багато в чому визначалася та визначається розвитком елементної бази та обчислювальної апаратурою.

Перше покоління.

40-ті роки.Перші цифрові машини без ОС. Організація обчислювального процесу вирішується програмістом із пульта управління.

Друге покоління.

50-ті роки.Поява прообразу ОС – моніторні системи, що реалізують систему пакетної обробки завдань.

Пакетний режим

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

Третє покоління.

1965-1980 р.р.Перехід до інтегральних схем. IBM/360. Реалізовано практично всі основні концепції, властиві сучасним ОС: поділ часуі багатозадачність, поділ повноважень, реальний масштаб часу, файлові структури та файлові системи. Реалізація мультипрограмування вимагала внесення дуже важливих змін в апаратуру комп'ютера: привілейований та користувальницький режими, засоби захисту областей пам'яті, розвиненої системи переривань.

Поділ часу та багатозадачність

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

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

Поділ повноважень

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

Реалізація поділу повноважень в ОС була підтримана розробниками процесорів, які запропонували архітектури з двома режимами роботи процесора – «реальним» (у якому виконуваної програмидоступний весь адресний простір комп'ютера) і «захищеним» (у якому доступність адресного простору обмежена діапазоном, виділеним під час запуску програми виконання).

Реальний масштаб часу

Застосування універсальних комп'ютерівдля управління виробничими процесами вимагало реалізації «реального масштабу часу» («реального часу») – синхронізації виконання програм із зовнішніми фізичними процесами.

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

Такі операційні системи отримали назву Операційні системи з плануванням у реальному масштабі часуабо скорочено ОСРВ.

Файлові системи та структури

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

Четверте покоління.

Кінець 70-х.Створено робочий варіант стека протоколів TCP/IP. 1983 року він був стандартизований. Незалежність від виробників, гнучкість та ефективність, доведені успішною роботоюІнтернет, зробила цей стек протоколів основним стеком більшість ОС.

Початок 80-х.Поява персональних комп'ютерів. Бурхливе зростання локальних мереж. Підтримка мережевих функційстала необхідною умовою.

80-ті роки. Прийнято основні стандарти на комунікаційні технологіїлокальних мереж: Ethernet, Token Ring, FDDI. Це дозволило забезпечити сумісність мережевих ОС нижніх рівнях.

Початок 90-х.Майже всі ОС стали мережевими. З'явилися спеціалізовані мережні ОС (наприклад, IOS, що працює в маршрутизаторах)

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

  • ІІ. Основні засади та правила службової поведінки державних цивільних службовців Федеральної податкової служби
  • ІІ. Основні цілі та завдання Програми, термін та етапи її реалізації, цільові індикатори та показники
  • ІІ. Основні етапи розвитку фізики Становлення фізики (до 17 ст).
  • III.2.1) Поняття злочину, основні характеристики.
  • Історія розвитку операційних систем налічує вже більше половини століття і нерозривно пов'язана з технічним рівнемрозвитку електроніки, матеріалознавства, математичного апарату, всіх тих дисциплін науки і техніки, без яких неможливо побудувати обчислювальний комплекс. Тому етапи розвитку операційних систем тісно пов'язані з певними етапаминауково-технічного прогресу у цій галузі.

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

    Перші електронні обчислювальні машини з'явилися після Другої світової війни. У 40-х були створені перші обчислювальні пристрої, засновані на лампах, і з'явився принцип програми, що зберігається в пам'яті машини (Говард Айкен з Гарвардського університету, Джон фон Нейман з Інституту поглибленого вивчення в Прінстоні та інші, червень 1945). Обчислювальні машини були громіздкими, які займали кілька кімнат. Їхня конструкція передбачала використання кількох тисяч електронних ламп. Такою ж громіздкою була і робота з обчислювальною машиною. Одна група людей одночасно виконувала їх обслуговування, експлуатацію та програмування. Такі машини цілком можна віднести до категорії експериментальних, і обчислення, що виконуються на них, швидше, носили пробний (експериментальний) характер. Програмування виконувалося виключно на машинною мовою, тобто. послідовним введенням з клавішного пульта кодів команд і даних, і ні про яке системне або прикладне програмне забезпечення не йшлося. Програма завантажувалася на згадку про машини з допомогою комутаційної панелі чи з колоди перфокарт. Існуючі пристроївводу/виводу не були стандартизовані і були примітивними пультами з набором перемикачів, кнопок та індикаторів. Всіми ресурсами обчислювальної машини розпоряджався обслуговуючий її персонал, який вручну запускав програму на виконання, виділяв їй необхідний обсяг пам'яті та візуально контролював весь процес обчислень. Обчислювальна система виконувала одночасно лише одну операцію (введення-виведення або власне обчислення). Налагодження програм велося з пульта керування за допомогою вивчення стану пам'яті та регістрів машини. Однак уже в цей період були створені бібліотеки математичних та службових програм, до яких програміст міг звертатися під час виконання основної програми.



    Наприкінці цього періоду з'являється перше системне програмне забезпечення: у 1951–1952 роках. виникають прообрази перших компіляторів із символічних мов (Fortran та інших.), а 1954 р. Nat Rochester розробляє Ассемблер для IBM-701.

    Значна частина часу йшла підготовку запуску програми, а самі програми виконувались суворо послідовно. Такий режим роботи називається послідовною обробкою даних. У цілому нині перший період характеризується вкрай високою вартістюобчислювальних систем, їх малою кількістю та низькою ефективністю використання. Так, ЕОМ UNIVAC I, розроблена в березні 1951 року, містила 5000 ламп і могла працювати зі швидкістю 1000 операцій на секунду. Вартість такої машини становила 159 000 доларів США.

    Другий період (1955 – початок 60-х).

    У 1950-х років ХХ століття розпочався новий період у розвитку обчислювальної техніки. На зміну реле та лампам прийшли напівпровідникові транзистори. Це дозволило збільшити продуктивність процесорів, різко збільшився обсяг оперативної та зовнішньої пам'яті, з'явилися нові пристрої поєднання. Загалом обчислювальна система стала складнішою, що змінило ставлення до неї з боку операторів. Виникла потреба в автоматизації обчислювальних робітяк наслідок, спрощення самого процесу програмування. У ці роки з'явилися перші алгоритмічні мови та супутнє їм спеціальне програмне забезпечення – транслятори. Серед мов на той час найбільшого поширення набули АЛГОЛ і Фортран.



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

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

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

    Комп'ютери другого покоління використовувалися головним чином наукових і технічних розрахунків, наприклад, як розв'язання диференціальних рівнянь. Програмування велося на Фортрані чи Асемблері, а типовими операційними системами служили FMS (Fortran Monitor System) та IBSYS (операційна система компанії IBM для комп'ютера IBM 7094).

    Третій період (початок 60-х – 1980 р.).

    Поява у 1965-1975 роках обчислювальних машин на базі інтегральних схемвідкрило нову сторінку у розвитку обчислювальної техніки. Нові машини мали складну розвинену архітектуру, найбільш наближену до архітектури сучасних комп'ютерів. На цей час повністю визначилися з основним периферійним обладнанням. Типовими представниками таких машин є серії ЕОМ IBM/360 або їхні вітчизняні аналоги – ЕОМ сімейства ЄС. Так як машини цієї серії мали однакову структуру та набір команд, то програми, написані для одного комп'ютера, могли працювати в принципі та на всіх інших. Ще однією перевагою серії комп'ютерів IBM/360 було те, що дані ЕОМ могли використовуватися як у наукових цілях (числові обчислення для науки і техніки), так і комерційного використання(Сортування та друк даних). Це зумовило успіх фірми IBM, яка заявила себе світовим лідером над ринком обчислювальних машин. Ідею сімейства сумісних комп'ютерів стали й інші виробники. Операційна система OS/360 була призначена для роботи на всіх комп'ютерах даного сімейства машин незалежно від того, яке призначення було у комп'ютера (розрахунок прогнозу погоди або звичайне копіювання інформації з перфокарт на магнітні стрічки).

    Незважаючи на те, що операційна система OS/360 була дуже громіздкою і складною (мільйони рядків на асемблері), саме в цей період були реалізовані практично всі основні механізми, що вбудовуються в сучасні операційні системи: багатозадачність, підтримка розрахованого на багато користувачів режиму, віртуальна пам'ять, файлова система і т.п. З напряму прикладної математики, що з програмуванням, виділяється окрема галузь - системне програмування. У разі різко зрослих обчислювальних потужностей виконання лише завдання у кожен час виявилося малоефективним. Рішення було знайдено в мультипрограмуванні (багатозадачності) - способі організації обчислювального процесу, при якому в оперативну пам'ять завантажується кілька завдань одночасно, але виконуються на одному процесорі поперемінно. Мультипрограмування було реалізовано у двох варіантах: у системі пакетної обробки, що добре зарекомендувала себе, і в системі поділу часу (розробник – Массачусетський технологічний інститут, IBM 7094), завдяки якій у кожного користувача з'явився свій діалоговий термінал.

    Використання інтегральних схем дозволило значно зменшити розміри обчислювальних машин. Такі ЕОМ стали називати міні-комп'ютери (PDP-1, корпорація DEC, 1961 рік), і хоча вартість їх становила близько 120 000 доларів США, вони були комерційно успішними і мали гарний попит. Їх вартість становила 5% від вартості ЕОМ IBM 7094, однак деякі операції комп'ютери серії PDP виконували з такою ж швидкістю.

    Саме для комп'ютерів серії PDP-7 фахівець фірми Bell Labs Кен Томпсон розробив однокористувацьку версію операційної системи MULTICS, яка пізніше розвинулася в операційну систему UNIX, у якої потім з'явилися різновиди System V (корпорація AT&T), BSD (Каліфорнійський інститут Берклі) та інші. Для операційної системи UNIX Кен Томпсон і Денис Рітчі розробили мову C, яка досі лідирує в галузі системного програмування. У 1974 році вони опублікували статтю The UNIX Timesharing System в журналі Commun. of the ACM, завдяки якій система UNIX стала популярною.

    Перший період (1945-1955). В середині 40-х були створені перші лампові обчислювальні пристрої (у США та Великій Британії), в СРСР перша лампова обчислювальна машина з'явилася в 1951 році. Програмування здійснювалося виключно машинною мовою. Елементна база – електронні лампита комунікаційні панелі. Операційних систем був, всі завдання організації обчислювального процесу вирішувалися вручну програмістом з пульта управління. Системне програмне забезпечення – бібліотеки математичних та службових підпрограм.

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

    Третій період (1965 – 1975). Перехід до інтегральним мікросхемам. Створення сімейств програмно-сумісних машин (серія машин IBM System/360, радянський аналог – машини серії ЄС). У цей час були реалізовані практично всі основні концепції, притаманні сучасним ОС: мультипрограмування, мультипроцесування, багатотермінальний режим, віртуальна пам'ять, файлова система, розмежування доступу і мережна робота. У процесорах з'явився привілейований та користувальницький режим роботи, спеціальні регістри для перемикання контекстів, засоби захисту областей пам'яті та система переривань. Інше нововведення – спулінг (spooling). Спулінг на той час визначався як спосіб організації обчислювального процесу, відповідно до якого завдання зчитувалися з перфокарт на диск у тому темпі, в якому вони з'являлися в приміщенні обчислювального центру, а потім, коли чергове завдання завершувалося, нове завдання з диска завантажувалося в розділ, що звільнився. . З'явився новий тип ОС – системи розподілу часу. Наприкінці 60-х років розпочато роботи зі створення глобальної мережі ARPANET, яка стала відправною точкою для Інтернету. До середини 70-х років широкого поширення набули міні-комп'ютери. Їхня архітектура була значно спрощена в порівнянні з мейнфреймами, що знайшло відображення і в їх ОС. Економічність і доступність міні-комп'ютерів стала потужним стимулом до створення перших локальних мереж. З середини 70-х почалося масове використання ОС UNIX. Наприкінці 70-х було створено робочий варіант протоколу TCP/IP, 1983 року його стандартизували.


    Четвертий період (1980 – теперішній час). Наступний період еволюції операційних систем пов'язані з появою великих інтегральних схем (ВІС). У ці роки відбулося різке зростання ступеня інтеграції та здешевлення мікросхем. Настала ера персональних комп'ютерів. Комп'ютери стали широко використовуватися фахівцями. Реалізовано графічний інтерфейс користувача (GUI – Graphical User Interface), теорія якого була розроблена ще у 60-ті роки. З 1985 року почала випускатися Windows, це була графічна оболонка MS-DOSаж до 1995 р., коли вийшла повноцінна ОС Windows 95. IBM та Microsoft спільно розробили операційну систему OS/2. Вона підтримувала витісняючу багатозадачність, віртуальну пам'ять, графічний інтерфейс користувача, віртуальну машину для виконання DOS-додатків. Перша версія вийшла 1987 р. Надалі Microsoft відмовилася від OS/2 і приступила до розробці Windows NT. Перша версія вийшла 1993г.

    У 1987р. було випущено операційну систему MINIX (прототип LINUX), вона була побудована за принципом мікроядерної архітектури.

    У 80-ті роки були прийняті основні стандарти на комунікаційне обладнання для локальних мереж: 1980 року – Ethernet, 1985 – Token Ring, наприкінці 80-х – FDDI. Це дозволило забезпечити сумісність мережевих ОС нижніх рівнях, і навіть стандартизувати інтерфейс ОС з драйверами мережевих адаптерів.

    У 90-ті роки майже всі ОС стали мережевими. З'явилися спеціалізовані ОС, призначені виключно на вирішення комунікаційних завдань (IOS компанії Cisco Systems). Поява служби World Wide Web (WWW) у 1991 році надало потужного імпульсу розвитку популярності Інтернету. Розвиток корпоративних мережевих операційних систем виходить першому плані. Відновлюється розвиток ОС мейнфреймів. У 1991р. було випущено LINUX. Трохи згодом вийшла FreeBSD (основою для неї послужила BSD UNIX).


    Всеросійський Заочний Фінансово-Економічний Інститут

    Факультет: фінансово – кредитний

    Спеціальність: фінанси та кредит група вечірня

    Курсова робота

    З дисципліни «Інформатика»

    На тему «Призначення, класифікація та еволюція операційних систем»

    Москва – 2008р.

    Вступ
    1 Призначення операційних систем 5

    2 Перерахуємо основні функції операційних систем 9

    2.2 Обслуговування всіх операцій введення-виведення 9

    3 Еволюція та класифікація ОС
    Висновок 2
    Список використаної літератури 22

    Вступ

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

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

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

    1 Призначення операційних систем

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

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

    Програмування операцій введення-виведення відноситься до однієї з найтрудомісткіших областей створення програмного забезпечення. Тут не йдеться про використання операторів типу READ або WRITE в мовах високого рівня. Йдеться про необхідність створити підпрограму в машинному вигляді, вже готову до виконання на комп'ютері, а не написану за допомогою деякої системи програмування (систем програмування тоді ще не було), підпрограму, замість звичайних обчислень, керуючу тим пристроєм, який має брати участь в операціях введення вихідних даних чи висновків результатів. За наявності такої підпрограми програміст може звертатися до неї стільки разів, скільки операцій з введенням-виводом з цим пристроєм йому потрібно. Для виконання цієї роботи програмісту недостатньо добре знати архітектуру обчислювального комплексу та вміти створювати програми мовою асемблера. Він повинен добре знати і інтерфейс, за допомогою якого пристрій підключено до центральної частини комп'ютера, і алгоритм функціонування пристрою керування вводу-виводу.

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

    У 50-ті роки взаємодія користувачів з обчислювальним комплексом була зовсім іншою, ніж нині. Програміст-кодер (від англ. coder – кодувальник) – спеціально підготовлений фахівець, який знає архітектуру комп'ютера та мову(і) програмування, - на замовлення складав текст програми, часто вже готовим алгоритмом, розробленим програмістом-алгоритмістом. Текст цієї програми потім віддавався оператору, який набирав його на спеціальних пристроях та переносив на відповідні носії. Найчастіше як носії використовувалися перфокарти або перфострічки. Далі колода з перфокартами передавалася до обчислювального залу, де для обчислень за цією програмою вимагатиме наступні дії:

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

    2. Транслятор зчитував вихідну програму, здійснював лексичний розбір вихідного тексту, і проміжні результати процесу трансляції часто виводили на перфокарти (перфострічку). Трансляція – складний процес, який часто вимагає кількох проходів. Часом для виконання чергового проходу доводилося на згадку про комп'ютер завантажувати з перфокарт і наступну частину транслятора, і проміжні результати трансляції. Адже результат трансляції виводився на носії інформації, оскільки обсяг оперативної пам'яті був невеликим, а завдання трансляції – це дуже складне завдання.

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

    Для автоматизації праці програміста (кодера) стали розробляти спеціальні алгоритмічні мови високого рівня, а автоматизації праці оператора обчислювального комплексу розробили спеціальна керуюча програма, завантаживши яку у пам'ять одного разу оператор міг її далі використовувати неодноразово і більше не звертатися до процедури програмування ЕОМ через пульт оператора. Саме цю програму, що управляє, і стали називати операційною системою. Згодом на неї почали покладати все більше і більше завдань, вона почала зростати в обсязі. Насамперед розробники прагнули до того, щоб операційна система якомога ефективніше розподіляла обчислювальні ресурси комп'ютера, адже у 60-ті роки операційні системи вже дозволяли організувати паралельне виконання кількох програм. Крім завдань розподілу ресурсів, з'явилися завдання забезпечення надійності обчислень. На початку 1970-х років діалоговий режим роботи з комп'ютером став переважним, й у операційних систем стрімко почали розвиватися інтерфейсні можливості. Термін інтерфейс (interface) означає цілий комплекс специфікацій, що визначають конкретний спосіб взаємодії користувача з комп'ютером.

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

    2 Перелічимо основні функції операційних систем

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

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

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

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

    2.2 Обслуговування всіх операцій введення-виведення

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

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

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

    Для мережевих операційних систем характерною є функція забезпечення взаємодії пов'язаних комп'ютерів.

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

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

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

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

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

    Надання послуг у разі часткового збою системи.

    p align="justify"> Операційна система ізолює апаратне забезпечення комп'ютера від прикладних програм користувачів. І користувач, і його програми взаємодіють із комп'ютером через інтерфейси операційної системи.

    3 Еволюція та класифікація ОС

    Еволюція ОС багато в чому зумовлена ​​вдосконалення апаратної бази ЕОМ.

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

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

    Перехід від окремих напівпровідникових елементів типу транзисторів до інтегральних мікросхем супроводжувався створенням сімей програмно-сумісних машин, наприклад, сімейства IBM/360, EC ЕОМ. ОС цих комп'ютерів орієнтувалися обслуговування обчислювальних систем з різноманітними периферійними пристроями й у різних галузях діяльності. Особливістю таких ОС стало мультипрограммирование – спосіб організації обчислювального процесу, у якому одному процесорі поперемінно виконуються кілька додатків. Наприклад, поки один додаток здійснює операції введення-виведення, процесор виконує обчислювальні операції іншого. Утворився новий тип ОС – системи поділу часу, що дозволяє створити кожному користувача ілюзію одноосібної роботи з комп'ютером. Поява великих (ВІС) та надвеликих інтегральних схем (НВІС) забезпечило широке поширення комп'ютерів та їх використання неспеціалістами в галузі програмування. Це потребувало розробки дружнього, інтуїтивно зрозумілого програмного інтерфейсу. Розвиток засобів комунікацій зумовило розвиток мережевих ОС.

    До сучасних ОС пред'являються такі вимоги:

    Сумісності – ОС має включати кошти до виконання додатків, підготовлених інших ОС;

    Перенесення - забезпечення можливості перенесення ОС з однієї апаратурної платформи на іншу;

    Надійності та відмовостійкості – передбачає захист ОЗ від внутрішніх та зовнішніх помилок, збоїв та відмов;

    Безпеки - ОС має містити засоби захисту ресурсів одних користувачів від інших;

    Розширюваності – ОС має забезпечувати зручності внесення наступних змін та доповнень;

    Продуктивності – система повинна мати достатню швидкодію.

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

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

    За кількістю одночасно виконуваних завдань виділяють ОС:

    Однозадачні ОС (MS-DOS, ранні версії PS DOS);

    Багатозадачні (OS/2, UNIX, Windows).

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

    Невитісняюча багатозадачність (NetWare, Windows 3. x та 9. х);

    Витіснюючи багатозадачність (Windows NT, OS/2, UNIX).

    У першому випадку активний процес по закінченні сам передає управління ОС для вибору черги іншого процесу. У другому - рішення про перемикання процесу з одного процесу з одного процесу на інший приймає не активний процес, а ОС.

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

    За кількістю одночасно працюючих користувачів виділяють ОС:

    Однокористувацькі (MS-DOS, Windows 3. x, ранні версії OS/2);

    Розраховані на багато користувачів (UNIX, Windows NT).

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

    Багатопроцесорна обробка передбачає підтримку роботи кількох процесорів і вітає у ОС Solaris 2. x фірми Sun, OS/2 фірми IBM, Windows NT фірми Microsoft, NetWare 4.1. фірми Novell та ін.

    Багатопроцесорні ОС поділяються на асиметричні та симетричні. Асиметрична ОС виконується одному з процесорів системи, розподіляючи прикладні завдання з іншим процесорам. Симетрична ОС децентралізована та використовує всі процесори, розділяючи між ними системні та прикладні завдання.

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

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

    Динамічне перерозподіл ресурсів ПЕОМ між кількома завданнями (спосіб колективного користування) забезпечує або скорочення сумарного часу вирішення кількох завдань, або зменшення часу початку обробки задачі. І те, й інше при одному «обслуговуючому приладі», наприклад процесорі або принтері, досягається за рахунок збільшення часу вирішення однієї (кожної) задачі. Порядок проходження завдань у машині визначає режими реалізації способу колективного користування: пакетної обробки та поділу часу. Пакетна обробкапередбачає вирішення кількох завдань приблизно в тому ж режимі, в якому працює викладач під час усного іспиту – його увага займає один із студентів. Після завершення опитування увага перемикається на наступного (вважаємо, що обслуговування студентів є рішенням завдання).

    У режимі розподілу часу процес виконання програм розбивається на цикли. Усередині кожного циклу обов'язково з'являється (якщо вона ще не вирішена) та базове завдання, Для якої виділений даний цикл. Інші завдання можуть вирішуватися в цьому ж циклі, якщо їхнє рішення не перешкоджає рішенню базової. Сусідні цикли виділяються на вирішення різних завдань, тому значно збільшується час вирішення кожної їх. Разом з тим, на очікування виконання чергової частини завдання витрачається не більше ніж N-1 циклів (N – число різноїменних циклів, виділених для розв'язання N різних завдань). При відповідному виборі тривалості циклу користувача (через його інерційності) створюється ілюзія роботи у реальному масштабі часу. Роботою в реальному масштабі часу називається режим роботи, при якому існують граничні обмеження на час вирішення задачі, що накладаються зовнішнім середовищем. Для системи управління це означає, що обробка інформації повинна протікати зі швидкістю, що перевищує швидкість реально протікає керованого процесу, для того, щоб був певний запас часу для прийняття рішень та формування відповідних керуючих впливів.

    p align="justify"> Для реальних умов роботи характерно те, що моменти надходження завдань на обробку визначаються не темпом роботи обслуговуючого приладу (ПЕОМ, принтера та ін), а процесами, що протікають поза ним. Відповідно до цього обслуговуючий прилад повинен вирішувати певну сукупність завдань (реакція на збої обладнання, заявка на зв'язок у мережі, примусове створення резервної копії тощо).

    При кінцевому швидкодії обслуговуючого приладу заявки, що надходять, не можуть бути виконані відразу, а стають в чергу. Процес вибору заявки з багатьох очікуваних обслуговування називається диспетчеризацією, а правило диспетчеризації – дисципліною обслуговування. Дисциплін обслуговування багато, наприклад «у порядку надходження» (FIFO – First Input First Output), «у зворотному порядку» (LIFO – Last Input First Output) та ін. обслуговування, зване пріоритетом, який характеризується цілим позитивним числом. Найвищий пріоритет призначається ОС.

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

    Системних функцій буває багато, вони визначають ті можливості, які операційна система надає додаткам, що виконуються під її управлінням. Такого роду системні запити(виклики системних операцій, або функцій) або явно прописуються в тексті програми програмістами, або автоматично підставляються самою системою програмування на етапі трансляції вихідного тексту програми, що розробляється. Кожна операційна система має багато системних функцій; вони викликаються відповідним чином, за прийнятими у системі правилами. Сукупність системних викликів і правил, за якими їх слід використовувати, визначає інтерфейс прикладного програмування (API). Очевидно, що програма, створена для роботи в деякій операційній системі, швидше за все не працюватимуть в іншій операційній системі, оскільки API цих операційних систем різняться. Намагаючись подолати це обмеження, розробники операційних систем стали створювати так зване програмне середовище. Програмне (системне) середовище слід розуміти як деяке системне програмне оточення, що дозволяє виконати всі системні запити від прикладної програми. Те системне програмне середовище, яке безпосередньо утворюється кодом операційної системи, називається основним, природним, або нативним (native). Крім основного операційного середовища в операційній системі можуть бути організовані (шляхом емуляції іншого операційного середовища) додаткові програмні середовища. Якщо операційній системі організована робота з різними операційними середовищами, то такій системі можна виконувати програми, створені як даної, але й інших операційних систем. Можна сказати, що програми створюються для роботи в певному заданому операційному середовищі. Наприклад, можна створити програму для роботи в середовищі DOS. Якщо така програма всі функції, пов'язані з операціями з операціями введення-виведення і з запитами пам'яті, виконує не сама, а за рахунок звернення до системних функцій DOS, то вона (в абсолютній більшості випадків) успішно виконуватиметься і в MS DOS, і в PS DOS, і Windows 9x, і Windows 2000, і OS/2, і навіть у Linux.

    Отже, паралельне існування термінів "операційна система" та "операційне середовище" викликано тим, що операційна система може підтримувати кілька операційних середовищ. Майже всі сучасні 32-розрядні операційні системи, створені для персональних комп'ютерів, підтримують кілька операційних середовищ. Так операційна система OS/2 Warp, яка свого часу була однією з найкращих щодо цього, може виконувати такі програми:

    Основні програми, створені з урахуванням «рідного» 32-розрядного програмного інтерфейсу цієї операційної системи;

    16-розрядні програми, створені для OS/2 першого покоління;

    16-розрядні програми, розроблені для виконання в операційній системі MS DOS або PS DOS;

    16-розрядні програми, створені для операційного середовища Windows 3. x;

    Саму оперативну оболонку Windows 3. x вже у ній – створені нею програми.

    А операційна система Windows XP дозволяє виконувати крім основних програм, створених з використанням Win32API, 16-розрядні програми для Windows 3. x, 16-розрядні DOS-програми, 16-розрядні програми для першої версії OS/2.

    Операційне середовище може включати кілька інтерфейсів: користувацькі та програмні. Якщо говорити про користувацькі, то, наприклад, система Linux має для користувача як інтерфейси командного рядка (можна використовувати різні «оболонки» - shell), на кшталт Norton Commander, наприклад X-Window з різними менеджерами вікон - KDE, Gnome та ін. Якщо ж говорити про програмних інтерфейсах, то в тих же операційних системах із загальною назвою Linux програмиможуть звертатися як до операційної системи за відповідними сервісами та функціями, так і до графічної підсистеми (якщо вона використовується). З погляду архітектури процесора (і персонального комп'ютера в цілому) двійкова програма, створена для роботи в середовищі Linux, використовує самі команди і формати даних, як і програма, створена до роботи у середовищі Windows NT. Однак у першому випадку ми маємо звернення до одного операційного середовища, а в другому – до іншого. І програма, створена безпосередньо для Windows, не виконуватиметься в Linux; якщо в ОС Linux організувати повноцінне операційне середовище Windows, наша Windows-програма може бути виконана. Загалом, операційне середовище - це системне програмне оточення, в якому можуть виконуватися програми, створені за правилами роботи цього середовища.

    Висновок

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

    На даний момент близько 90% персональних комп'ютерів використовують ОС Windows, яка має низку переваг і витіснила конкурентів із цього сегменту ринку. Більше широкий клас ОС спрямовано використання на серверах. До цього класу ОС відносять сімейство Unix, розробки фірми Microsoft, мережеві продукти Novell і корпорації IBM.

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

    Список використаної літератури

    Гордєєв А.В. Операційні системи: Підручник для вузів. 2-ге вид. - СПб.: Пітер, 2005.

    Основи інформатики: Навч. посібник/О.М. Морозевич, Н.М. Говядінова, В.Г. Левашенко та ін; За ред.А.Н. Морозевича. - 2-ге вид., Випр. - Мн.: Нове знання, 2003.

    Євсюков В.В. Економічна інформатика: Навч. посібник - Тула: Видавництво "Граф і К", 2003.

    Інформатика економіки: Навч. посібник / За ред. проф. Б.Є. Одинцова, проф. Романова. - М.: Вузовський підручник, 2008.