Доповідь Студента групи нб-41 Ткачука Романа Питання: Дайте визначення операційної системи. Класифікація І основні властивості операційних систем. Функціональні компоненти операційної системи, архітектура операційної системи



Скачати 107.56 Kb.
Дата конвертації27.04.2016
Розмір107.56 Kb.
Доповідь

Студента групи НБ-41

Ткачука Романа
Питання: Дайте визначення операційної системи. Класифікація і основні властивості операційних систем. Функціональні компоненти операційної системи, архітектура операційної системи.


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

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


  1. Класифікація і основні властивості ОС.

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

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

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

3. Розрядність. 16-розрядні ОС (DOS, Windows 3.1, Windows 3.11) пішли в минуле з появою 32-розрядних ОС (Windows 98/ME). В наш час поширюються 64- розрядні (Windows XP, Windows 7, Linux, Mac OS ), і планується вихід Windows 8 очікується не раніше 2011 —2012 року. Основні характеристики і особливості відповідно до офіційно непідтверджених відомостей, головною особливістю Windows 8 буде підтримка 128-бітної (128-розрядної) архітектури. У жовтні 2009 року з'явилася неофіційна інформація про те, що розробники Windows 8 в цей момент реалізують впровадження в IA-128 повної бінарної сумісності з існуючими 64- бітними інструкціями. Встановлюються угоди з провідними виробниками процесорів та інших апаратних засобів, включаючи компанії Intel, AMD, Hewlett-Packard і IBM. В

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

Відповідно до можливостей розширення операційні системи бувають:


  • закриті (не дозволяють розширення функціональності ОС);

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

Відповідно до можливостей доступу до вихідного коду операційні системи бувають:

  • вільні (з відкритим програмним кодом);

  • пропрієтарні (комерційні з закритим кодом).

Основні властивості ОС:

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

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


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

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

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

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

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


  1. Функціональні компоненти ОС , архітектура ОС.

Функціональні компоненти ОС

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



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

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

Інше означення процесу - це програма під час її виконання.

Процес — мінімальний програмний об'єкт, що володіє власними системними ресурсами (запущена програма)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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



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

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

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

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



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

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

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

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

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

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

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

Архітектура операційної системи.

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



Ядро системи. Привілейований режим і режим користувача

До складу операційної системи входять:



  • Ядро операційної системи, що забезпечує розподіл і управління ресурсами обчислювальної системи;

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

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

  • управління введенням-виведенням інформації (підсистема вводу-виводу ядра ОС);

  • управління оперативною пам'яттю (підсистема управління оперативною пам'яттю ядра ОС);

  • управління процесами (підсистема управління процесами ядра ОС).

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

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

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

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

Для забезпечення ефективного керування ресурсами комп'ютера ОС повинна мати певні привілеї щодо прикладних програм. Треба, щоб прикладні програми не втручалися в роботу ОС, а ОС могла втрутитися в роботу будь-якої програми, наприклад для перемикання задачі або розв'язання конфлікту через ресурси. Для реалізації таких привілеїв потрібна апаратна підтримка: процесор має підтримувати принаймні два режими роботи - привілейований (захищений режим, режим ядра, kernel mode) і режим користувача (user mode). У режимі користувача недопустимі команди, які є критичними для роботи системи (перемикання задач, звертання до пам'яті за заданими межами, доступ до пристроїв введення-виведення тощо).

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

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



Монолітні системи

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

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

Системи з мікроядром

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

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




Переніс основного обсягу функцій ядра в користувацький простір

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

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

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





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


База даних захищена авторським правом ©shag.com.ua 2016
звернутися до адміністрації

    Головна сторінка