Professional Documents
Culture Documents
Основні концепції операційних систем. Архітектура операційних систем
Основні концепції операційних систем. Архітектура операційних систем
Основні концепції
операційних
систем
3
Склад комп’ютерних систем. Поняття
операційної системи
Комп’ютерна система – це сукупність апаратного та програмного забезпечення комп’ютера.
Апаратне забезпечення включає:
центральний процесор;
оперативну пам’ять;
зовнішню пам’ять: жорсткі диски, CD/DVD – диски, флеш-пам’ять;
шину даних;
пристрої введення-виведення: консоль, клавіатура, мишка, принтер, сканер, мережне обладнання.
Програмне забезпечення поділяється на дві великі групи:
системні програми – керують роботою комп’ютера;
прикладні програми – виконують розв’язування задач користувача.
4
Місце операційної системи в загальній
структурі комп’ютера
Операційна система – це
Системні та прикладні
програми програмне забезпечення, що
Інтерфейс
реалізує зв’язок між
прикладного прикладними програмами
програмування та апаратними засобами
Абстракції
комп’ютера; забезпечує
керування обчислювальним
Операційна система
процесом та організує
Деталі доступу
взаємодію з користувачем.
Інтерфейс
апаратного
забезпечення
Апаратне забезпечення
5
Функції операційних систем
Linux є фактично аналогом Windows. Це операційна система з відкритим кодом, ядро якої поширюється на безкоштовній
основі. Вона включає в себе ядро системи та набір невеликих програм, які чинять взаємодію з даним ядром. В роботі
Linux найчастіше використовують web-розробники, однак, працювати з нею може будь-який користувач, підібравши
правильний дистрибутив.
Список деяких дистрибутивів та їх призначення:
Fedora - дистрибутив на основі RPM для серверів на ПК;
MyLinux - базується на Fedora дистрибутив;
CentOS (Community ENTerprise Operating System) - комерційний дистрибутив, який створений на основі дистрибутива
Red Hat;
BBEL - орієнтований на безпеку;
Parrot - призначений для перевірки вразливості системи, оцінки ризиків.
Загалом, більшу частину дистрибутивів можна завантажити безкоштовно, деякі ж - вимагають оплату ліцензій. З ОС Linux
можна обійтися без встановлення антивірусної системи, адже система виключає роботу шкідливих систем.
15
Сучасні операційні системи
MacOS є основною операційною системою пристроїв Apple (iMac, Mac Pro, MacBook тощо). Коли мова йде про ОС
MacOS, то це про надійність, стійкість, продуктивність, зручність використання та стабільність роботи.
Найчастіше в рамках своєї професійної діяльності дану операційну систему використовують дизайнери та web-
розробники. Легкість управління дозволяє лише одним кліком по іконці Launchpad відкрити весь перелік програм на
Вашому ПК. Також в Launchpad доступний пошук за встановленими додатками.
Усі процеси ПЗ влаштовані так, що не викликають перезавантаження системи, тому користувачам не варто хвилюватись
про раптові вимкнення пристрою. Результати роботи зберігаються як на ПК, так і в хмарному сховищі iCloud.
Так як MacOS підтримує лише сертифіковані програми від Apple, це безпосередньо позитивно впливає на максимальний
захист Ваших даних.
16
Склад операційних систем
Архітектура
операційних
систем
20
Поняття архітектури операційних систем
Зовнішнє
середовище
Архітектура операційної системи – це базові
системні (інші програми)
сукупність компонентів системи та порядок прикладні
бібліотеки програми
їхньої взаємодії між собою та із зовнішнім
середовищем.
ЯДРО
Основні компоненти (складові) операційної
системи:
програми
обслуговування
системи
21
Режими виконання процесором
програмного коду
Режим ядра (kernel mode). Команди, що виконуються у цьому режимі:
мають прямий доступ до апаратного забезпечення;
мають доступ до усієї пам’яті комп’ютера;
не можуть бути ви тіснені у файл підкачки на диск;
виконуються з найвищим пріоритетом.
Режим користувача (user mode). Програма, що виконується у цьому режимі:
не має прямого доступу до апаратури;
має обмежений адресний простір;
може бути витіснена у віртуальну пам’ять;
виконується з меншим пріоритетом, ніж ядро.
Команди, які є критичними для роботи системи (перемикання задач, звертання до пам’яті з заданими межами, доступ до
пристроїв введення-виведення) в цьому режимі недопустимі.
Обидва режими реалізовані на апаратному рівні.
22
Взаємодія операційної системи з апаратним
забезпеченням
Засоби апаратної підтримки операційних систем:
система переривань:
o апаратні переривання;
o програмні переривання;
привілейований режим процесора;
засоби керування пам’яттю:
o механізми трансляції адрес;
o захист пам’яті;
o системний таймер;
захист пристроїв введення-виведення;
базова система введення-виведення (BIOS).
23
Взаємодія операційної системи з
програмним забезпеченням
Засобами взаємодії операційної системи та програм є:
системні виклики – це засіб доступу до певної функції ядра операційної системи із прикладних програм.
інтерфейс програмування застосувань (API) – cюди входять додаткові функції, котрі доповнюють та розширюють
можливості системних викликів. Мета формування інтерфейсу програмування застосувань: надати програмісту
бібліотеку функцій, котрі виконують системні виклики та реалізовані у режимі користувача.
Програмна сумісність – можливість виконувати в середовищі однієї ОС програми, розроблені для іншої ОС.
Досягається за рахунок:
наявності стандарту на мову програмування та компілятор;
наявності стандарту на інтерфейс програмування застосувань.
24
Схема взаємодії між ядром та прикладними
програмами
Прикладна
Ядро ОС
програма
Передача
Перемикання
Використання результату
між Результат
одержаних даних режимами
Режим користувача Режим
ядра
25
Схема взаємодії між ядром та прикладними
програмами
Прикладна
Ядро ОС
програма
Виконання команди:
mkdir Перемикання - перевірка прав доступу,
Створити папку між - виділення місця на диску,
параметр: ім’я папки режимами - внесення запису у файлову
таблицю
Політика управління компонентами – рішення щодо використання визначених можливостей. (ЯК можна використати
компоненти)
27
Підходи до реалізації архітектури
операційних систем
Виділяють наступні основні реалізації архітектури операційних систем:
Монолітна система;
Багаторівнева система;
Система з мікроядром;
Віртуальна машина.
28
Монолітні системи
Багаторівнева система – це система, компоненти котрої утворюють ієрархію рівнів, кожен з яких спирається на функції
попереднього рівня.
Схема рівнів системи: + 1) висока продуктивність;
Система з мікроядром – це система, у якій невелика частка функцій ядра реалізована у привілейованому режимі
(mikrokernel), інші функції – виконуються процесами режиму користувача.
+ 1) невеликий розмір ядра спрощує його розробку та
налагодження;
Прикладна
Повернення
+ 2) висока надійність (тільки невелика кількість
програма команд мікроядра має доступ до АЗ);
результату
Модуль
Системний операційної системи Режим + 3) гнучкість та розширюваність (нові функції можна
виклик режиму користувача користувача додати шляхом додавання модуля);
Віртуальна машина – це створена програмно копія апаратного забезпечення, на якій функціонує одна чи декілька інших
операційних систем.
Існує два типи віртуальних машин:
Прикладні програми, що
працюють в межах 1) Віртуальна машина, що працює
конкретної ОС безпосередньо на реальному
Операційні системи, обладнанні,
ОС 1 OC 2 OC n
встановлені на
Windows Linux FreeBSD віртуальній системі
2) Віртуальна машина, котра
встановлена як прикладна програма
над існуючою ОС.
Монітор
Моніторвіртуальної
віртуальноїмашини
машини(гіпервізор)
(гіпервізор)
Апаратне забезпечення
32
Віртуальні машини
Схема роботи віртуальної машини, котра встановлена як прикладна програма над існуючою ОС.
Апаратне забезпечення
33
Архітектура операційної системи UNIX
(базова)
Програми користувача Режим
користувача
Системні бібліотеки
Підсистема
введення-виведення
Режим
Апаратне забезпечення апаратури
34
Архітектура операційної системи UNIX
Компоненти режиму ядра:
1) Підсистема керування процесами – контролює створення та вилучення процесів, розподілення системних ресурсів
між ними, міжпроцесову взаємодію, керування пам’яттю.
2) Файлова підсистема – забезпечує єдиний інтерфейс доступу до даних, розташованих на дискових накопичувачах та
до периферійних пристроїв, контролює права доступу до файлів.
!!! В UNIX-подібних системах одні і ті самі системні виклики використовують як для обміну даними з диском, так і для
виведення на термінал або принтер (програма працює з принтером як з файлом).
3) Підсистема введення-виведення – виконує запити файлової підсистеми.
Символьні пристрої – файли цих пристроїв потрібно зчитувати/записувати послідовно, потоками символів.
(принтер, модем)
Блокові пристрої – допускають прямий доступ до будь-якої ділянки файлу. (диск)
4) Інтерфейс системних викликів – обов’язково має містити визначений стандартом POSIX мінімальний набір
функцій для управління процесами, файловою системою, правами користувачів, системним часом. Стандарт POSIX
(Portable Operating System) розроблений інститутом IEEE для забезпечення сумісності усіх UNIX-подібних систем.
35
Архітектура операційної системи Linux
Планувальник процесів
Менеджер пам’яті
Системні - стандартний набір функцій для використання у
Ядро бібліотеки прикладних програмах
Віртуальна файлова система
Режим ядра
Ядро NTOS.
Диспетчер Диспетчер
Графічні Диспетчер Диспетчер Менеджер
введення- процесів і
драйвери об’єктів кеша конфігурації
виведення потоків
Засіб
Диспетчер Менеджер
Драйвери локального Файлова Диспетчер
віртуальної енерго-
пристроїв виклику система безпеки
пам’яті споживання
процедур
Режим
Апаратне забезпечення апаратури
38
Архітектура операційної системи Windows