69297

Поняття операційної системи, її призначення та функції

Лекция

Информатика, кибернетика и программирование

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

Украинкский

2014-10-02

65.5 KB

32 чел.

Лекція № 1

Тема: Поняття операційної системи, її призначення та функції

План

  1.  Поняття операційної системи
  2.  Призначення операційної системи
  3.  Функціональні компоненти операційних систем

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

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

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

Можна дати таке означення операційної системи.

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

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

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

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

Операційна система як розширена машина

За допомогою операційної системи у прикладного програміста (а через його програми і в користувача) має створюватися враження, що він працює з розширеною машиною [4, 29, 41, 44].

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

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

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

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

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

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

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

Функціональні компоненти операційних систем

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

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

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

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

Можна дати таке означення: процес — це програма під час її виконання.

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

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

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

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

захисту ресурсів (наприклад, вони спільно використовують адресний простір свого процесу).

Керування пам'яттю

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

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

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

Керування введенням-виведенням

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

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

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

Керування файлами та файлові системи

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

Файл — це набір даних у файловій системі, доступ до якого здійснюється за іменем. Термін «файлова система» може вживатися для двох понять: принципу організації даних у вигляді файлів і конкретного набору даних (зазвичай відповідної частини диска), організованих відповідно до такого принципу. У рамках ОС може бути реалізована одночасна підтримка декількох файлових систем.

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

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

Мережна підтримка

Мережні системи

Сучасні операційні системи пристосовані до роботи в мережі, їх називають мережними операційними системами [29]. Засоби мережної підтримки дають ОС можливість:

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

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

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

Розподілені системи

Мережні ОС не приховують від користувача наявність мережі, мережна підтримка в них не визначає структуру системи, а збагачує її додатковими можливостями. Є також розподілені ОС [б, 45], які дають змогу об'єднати ресурси декількох комп'ютерів у розподілену систему. Вона виглядає для користувача як один комп'ютер з декількома процесорами, що працюють паралельно. Розподілені та багатопроцесорні системи є двома основними категоріями ОС, які використовують декілька процесорів. Вони мають багато спільного й будуть розглянуті в розділі 20.

Безпека даних

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

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

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

Розрізняють два типи засобів взаємодії користувача з ОС: командний інтерпретатор (shell) і графічний інтерфейс користувача (GUI).

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

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

Питання для самоконтролю:

  1.  Поняття операційної системи.
  2.  Причини появи операційних систем.
  3.  Призначення ОС як розширеної машини.
  4.  Операційна система як розподілювач ресурсів.
  5.  Функціональні компоненти ОС. Охарактеризувати.


 

А также другие работы, которые могут Вас заинтересовать

9099. Виникнення і розвиток держави і права США 163.5 KB
  Виникнення і розвиток держави і права США. ПЛАН Економічне і політичне становище північно-американських колоній Англії. Революційна війна за незалежність. Декларація незалежності 1776 року. Створення конфедерації. Конституція США 1787...
9100. Утворення і розвиток буржуазної держави і права у Франції 276 KB
  Утворення і розвиток буржуазної держави і права у Франції П Л А Н Буржуазна революція 1789-1794 р. Проголошення республіки. Державний переворот 1789 року. Проголошення імперії і її падіння. Реставрація монархії Бурбонів. Революція...
9101. Виникнення і розвиток буржуазної держави і права у Німеччині 111.5 KB
  Виникнення і розвиток буржуазної держави і права у Німеччині. План. Німеччина після Віденського конгресу. Революція 1848р. і її вплив на розвиток німецьких держав. Утворення Німецької імперії. Конституція 1871 року. Характерн...
9102. Держава і право Росії 18-початку 20 століття 127.5 KB
  Держава і право Росії 18-початку 20 століття. План 1. Державні реформи першої половини 18 століття. 2. Формування нової системи права. Кодифікація права. 3. Реформи 60-70-х років. Селянська реформа 1861 р. Судова реформа 1864 р. Земська реформа 1864...
9103. Держава і право США Новітнього періоду 133.5 KB
  Держава і право США Новітнього періоду. Централізація державної влади. Новий курс президента Ф.Д. Рузвельта. Зміни в конституції. Партійна система і її вплив на формування державних органів. Місцеве управління, суд, поліція...
9104. Держава і право Німеччини Новітнього періоду 110 KB
  Держава іправоНімеччини Новітнього періоду. План Листопадова революція 1918 року. Зміни в державному ладі, політичному режимі та партійній системі. Встановлення фашистської диктатури. Зміни в державному ладі та праві. К...
9105. Держава і право Франції Новітнього періоду 81.5 KB
  Держава і право Франції Новітнього періоду. ПЛАН . Зміни в державному устрої та політичному режимі між двома світовими війнами. Падіння Третьої республіки. Державний устрій та політичний режим Четвертої республіки. Державний устрій...
9106. СТАРОДАВНІ ДЕРЖАВИ І ПРАВО НА ТЕРИТОРІЇ УКРАЇНИ 92.5 KB
  СТАРОДАВНІ ДЕРЖАВИ І ПРАВО НА ТЕРИТОРІЇ УКРАЇНИ Виникнення стародавніх держав. Трипільська культура. Держава і право скіфів. Держава і право античних міст-держав. Держава і право Боспорського царства. Держава і право стародавніх східних слов`ян. Пол...
9107. ДЕРЖАВА І ПРАВО КИЇВСЬКОЇ РУСІ 166.5 KB
  ДЕРЖАВА І ПРАВО КИЇВСЬКОЇ РУСІ Утворення, розвиток і занепад Київської Русі. Суспільний лад. Державний устрій. Характеристика права. 1. Утворення, розвиток і занепад Київської Русі У Літописі Руськомуo (який містить Повість време...