Лекція 3-4. Архітектура операційних систем. Викладач: Карчевська Ольга Ігорівна, асистент кафедри інформаційних систем та технологій, Інститут підприємництва.

Презентация:



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

ІНФОРМАТИКА. 9 КЛАС Програмне забезпечення комп'ютерних систем Навчальна презентація вчителя Большакової Кристини Сергіївни ЗОШ 9 м. Ізмаїл.
СИСТЕМНІ ПРОГРАМИ. Операційні системи Операційна система (ОС) – це комплекс програм, які забезпечують користувача і прикладні програми зручним інтерфейсом.
Операційна система – набір програм, які призначені для забезпечення взаємодії усіх пристроїв комп'ютера й виконання користувачем дій над об'єктами.
ІНФОРМАТИКА. 9 КЛАС Програмне забезпечення комп'ютерних систем Розділ 6 Навчальна презентація з інформатики для 9 класу вчителя Анрієнко М.А.
Різновиди програмного забезпечення. Поняття операційної системи та її функції. Складові та класифікація операційних систем Системне програмне забезпечення.
1. Класи програмних продуктів 2. Системне програмне забезпечення 2.1. Базове програмне забезпечення Операційні системи Мережні операційні.
Структура операційної системи. Операційна система починає працювати одразу після ввімкнення комп ютера, тому певну її частину розміщено в найважливішій.
Програмне забезпечення комп'ютерів. Програмне забезпечення (ПЗ) поділяється: Операційна система Прикладні програми - Це сукупність програм, що призначені.
Різновиди програмного забезпечення. Поняття операційної системи та її функції. Складові та класифікація операційних систем Системне програмне забезпечення.
Розділ 3. Системне програмне забезпечення Операційні системи. Операційна система Windows.
Розробив: Студент 221 грп Олару Дмитро. Залежно від відстані виділяють: Локальні мережі – об'єднання комп'ютерів, що розміщені на невеликих відстанях.
ІНФОРМАТИКА. 9 КЛАС Програмне забезпечення комп'ютерних систем Розділ 6 Навчальна презентація вчителя Кравчук Г.Т. СЗШ 8 м. Хмельницького.
Урок 10 5 клас. Комп'ютернні мережі. Локальна мережа. Використаннямережевих папок
Запам'ятай! Операційна система (ОС) – комплекс програм, що забезпечує: керування роботою пристроїв компютера та обмін даними між ними; зберігання даних.
Інформатика. Перший рік Тема Програмне забезпечення компютерних систем Розділ 3 Системне програмне забезпечення інформаційних систем Презентаційний.
Види комп`ютерних програм Системні Прикладні Інструментальні.
9 клас Основні питання: Поняття про компютерні мережі Класифікації компютерних мереж Апаратне забезпечення мереж Мережні протоколи Програмне забезпечення.
Програмне забезпечення компютерних систем. Різновиди програмного забезпечення Прикладне ПЗ Службові програми, утиліти Системне ПЗ.
1 Архітектура операційної системи 2 Навчальні питання 1.Ядро і допоміжні модулі ОС. 2.Ядро в привілейованому режимі 3.Апаратна залежність і переносність.
Транксрипт:

Лекція 3-4. Архітектура операційних систем. Викладач: Карчевська Ольга Ігорівна, асистент кафедри інформаційних систем та технологій, Інститут підприємництва та перспективних технологій Національного університетуЛьвівська політехніка

Лекція 3-4. Архітектура операційних систем. План лекції. 1. Поняття архітектури операційних систем. 2. Взаємодія операційної системи з апаратним забезпеченням. 3. Взаємодія операційної системи з програмним забезпеченням. 4. Підходи до реалізації архітектури операційних систем. 5. Архітектура системи UNIX. 6. Архітектура системи Linux. 7. Архітектура системи Windows.

1. Поняття архітектури операційних систем. Архітектура операційної системи Архітектура операційної системи – це сукупність компонентів системи та порядок їхньої взаємодії між собою та із зовнішнім середовищем. Основні компоненти (складові) операційної системи: ЯДРО системні бібліотеки програми обслуговування системи базові прикладні програми Зовнішнє середовище (інші програми)

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

2. Взаємодія операційної системи з апаратним забезпеченням. Засоби апаратної підтримки операційних систем: система переривань: апаратні переривання програмні переривання привілейований режим процесора засоби керування памяттю: механізми трансляції адрес захист памяті системний таймер захист пристроїв введення-виведення базова система введення-виведення. (BIOS).

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

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

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

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

4. Підходи до реалізації архітектури операційних систем. Виділяють наступні основні реалізації архітектури операційних систем: Монолітна система Монолітна система Багаторівнева система Багаторівнева система Система з мікроядром Система з мікроядром Віртуальна машина Віртуальна машина

Монолітна система – це система, у якій всі базові функції сконцентровані у ядрі. Базова структура монолітної системи: Монолітні системи + - 1) підвищується продуктивність (не витрачається час на перемикання між режимами). Основна програма Службові процедури, котрі виконують системні виклики Допоміжні підпрограми для виконання службових процедур !!! Увесь код виконується у привілейованому режимі 1) менш надійні (оскільки увесь код виконується у привілейованому режимі, то кожна помилка може бути критичною). Приклади: OS/360, UNIX ранніх версій.

Багаторівневі системи Багаторівнева система – це система, компоненти котрої утворюють ієрархію рівнів, кожен з яких спирається на функції попереднього рівня. Схема рівнів системи: + - 1) Висока продуктивність; Апаратура Засоби апаратної підтримки ядра Машинно-залежні модулі Базові функції ядра Менеджери ресурсів Інтерфейс системних викликів Системні та прикладні програми Приклад: THE, створена Е.Дейкстрою в Technische Hogeschool Eindhoven, 1968 р. MULTICS, MULTICS, Масачусетський університет, Bell Labs, General Electrics. 1) великий обсяг коду ядра знижує надійність системи.

Системи з мікроядром Система з мікроядром – це система, у якій невелика частка функцій ядра реалізована у привілейованому режимі (mikrokernel), інші функції – виконуються процесами режиму користувача ) невеликий розмір ядра спрощує його розробку та налагодження; 2) висока надійність (тільки невелика кількість команд мікроядра має доступ до апаратного забезпечення); 3) більша гнучкість та розширюваність (нові функції можна додати шляхом додавання нового модуля); 4) можливість адаптації до умов мережі (функції ядра та режиму користувача можуть знаходитись на різних компютерах). 1) зниження продуктивності через велику кількість переключень між режимами Прикладнапрограма Модуль операційної системи режиму користувача Мікроядро Режим ядра Режим користувача Системний виклик Повернення результату Обмін даними Приклад: Symbian OS, Minix.

Віртуальні машини Віртуальна машина – це створена програмно копія апаратного забезпечення, на якій функціонує одна чи декілька інших операційних систем. Існує два типи віртуальних машин: 1) Віртуальна машина, що працює безпосередньо на реальному обладнанні, 2) Віртуальна машина, котра встановлена як прикладна програма над існуючою ОС. Монітор віртуальної машини (гіпервізор) Апаратне забезпечення ОС 1 Windows OC 2 Linux OC n FreeBSD Прикладні програми, що працюють в межах конкретної ОС Операційні системи, встановлені на віртуальній системі

Віртуальні машини Схема роботи віртуальної машини, котра встановлена як прикладна програма над існуючою ОС. Прикладні програми, що працюють в межах конкретної гостьової ОС Гостьові операційні системи (guest OS) Прикладні програми, що працюють в межах основної ОС Основна операційна система (host OS) Монітор віртуальної машини (гіпервізор) Апаратне забезпечення ОС 1 Windows OC 2 Linux OC n FreeBSD Приклади: VMware, розробка дослідників Стенфордського університету, 1999р. Virtual PC, розробку розпочала фірма Connectix, згодом проект викупила Microsoft.

5. Архітектура операційної системи UNIX (базова) Режим апаратури Режим ядра Режим користувача Апаратне забезпечення Засоби керування апаратурою Підсистемавведення-виведення Драйвери символьних пристроїв Драйвери блокових пристроїв Підсистемакеруванняпроцесами Міжпроцесорна взаємодія Планувальник Керування памяттю Буферний кеш Файлова підсистема Інтерфейс системних викликів Програми користувача Системні бібліотеки

Архітектура операційної системи UNIX Компоненти режиму ядра 1. Підсистема керування процесами – контролює створення та вилучення процесів, розподілення системних ресурсів між ними, міжпроцесову взаємодію, керування памяттю. 2. Файлова підсистема – забезпечує єдиний інтерфейс доступу до даних, розташованих на дискових накопичувачах та до периферійних пристроїв, контролює права доступу до файлів. !!! В UNIX-подібних системах одні і ті самі системні виклики використовують як для обміну даними з диском, так і для виведення на термінал або принтер (програма працює з принтером як з файлом). 3. Підсистема введення-виведення – виконує запити файлової підсистеми. Символьні пристрої – файли цих пристроїв потрібно зчитувати/записувати послідовно, потоками символів. (принтер, модем) Блокові пристрої – допускають прямий доступ до будь-якої ділянки файлу. (диск) 4. Інтерфейс системних викликів – обовязково має містити визначений стандартом POSIX мінімальний набір функцій для управління процесами, файловою системою, правами користувачів, системним часом. Стандарт POSIX (Portable Operating System) розроблений інститутом IEEE для забезпечення сумісності усіх UNIX-подібних систем.

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

Архітектура операційної системи Linux 1. Планувальник процесів - відповідає за реалізацію багатозадачності (робота з таймером, створення та завершення процесів та ін.) 2. Менеджер памяті - виділяє адресний простір для кожного процесу та реалізує підтримку віртуальної памяті. 3. Віртуальна файлова система - надає універсальний інтерфейс взаємодії з різними файловими системами та пристроями введення-виведення. 4. Драйвери пристроїв - забезпечують роботу з периферійними пристроями. 5. Мережний інтефейс - забезпечує доступ до мережних протоколів та драйверів мережних пристроїв. 6. Підсистема міжпроцесорної взаємодії - забезпечує обмін даними між процесами. Компоненти режиму ядра:

7. Архітектура операційної системи Windows Режим апаратури Режим ядра Режим користувача Апаратне забезпечення Рівень абстрагування від апаратури (HAL) Диспетчер введення- виведення Виконавчий рівень NTOS Програми користувача Бібліотека системного інтерфейсу Ядро NTOS. Диспетчер кеша Диспетчер процесів і потоків Диспетчер обєктів Засіб локального виклику процедур Менеджер конфігурації Диспетчер безпеки Менеджер енерго- споживання Диспетчер віртуальної памяті Файлова система Драйвери пристроїв Графічні драйвери

Архітектура операційної системи Windows Компоненти режиму ядра. 1. Рівень абстрагування від устаткування (Hardware Abstraction Layer, HAL). (hal.dll) Завданням цього рівня є приховати залежні від апаратури команди для роботи з регістрами процесора, памяттю, системним таймером та іншим обладнанням, надаючи ядру системи та драйверам набір незалежних від компютера служб (процедур та макросів). 2. Ядро (ntoskrnl.exe) має два рівні: 1) Рівень ядра, котрий здійснює - диспетчирезацію пасток, виключень, переривань, - планування та синхронізацію процесів; 2) Виконавчий рівень – набір компонентів (диспетчерів), відповідальних за найважливіші служби ОС.

Архітектура операційної системи Windows Складові виконавчого рівня ядра: 1.Диспетчер обєктів – відповідає за розподіл ресурсів у системі, підтримуючи їхнє універсальне подання через обєкти. 2.Диспетчер введення-виведення: а) Реалізує єдиний інтерфейс для драйверів пристроїв, б) Містить засоби Plug and Play. в) Керує енергоспоживанням (економний режим для ноутбуків). 3. Диспетчер процесів і потоків – створює та завершує процеси та потоки, розподіляє для них ресурси. 4. Диспетчер вітруальної памяті. 5. Диспетчер кешу – оптимізує продуктивність читання/запису у файловій системі. 6. Диспетчер конфігурації – компонент, що підтримку роботи з реєстром. Реєстр містить конфігураційні файли для системи та прикладних програм. 7. Засіб для локального виклику процедур – забезпечує механізм звязку між процесами. Драйвери пристроїв – це динамічно звязувані бібліотеки, котрі завантажуються компонентами виконавчого рівня ядра.

Архітектура операційної системи Windows Компоненти режиму користувача. 1. Бібліотека системного інтерфейсу. (ntdll.dll) Надає набір функцій, кожній з яких відповідає функція режиму ядра. Використовуються підсистемами середовища. 2. Підсистеми середовища. Надають прикладним програмам доступ до служб операційної системи, реалізуючи інтерфейс прикладного програмування – Application Programming Interface, API. У MS Windows це Win32 API (Win64 API - сучасна). До Win API входять компоненти: процес підсистеми (csrss.exe), котрий відповідає за реалізацію консольного введення-виведення, створення та знищення процесів,процес підсистеми (csrss.exe), котрий відповідає за реалізацію консольного введення-виведення, створення та знищення процесів, бібліотеки функцій Win API. Найчастіше функції містяться у файлах kernel32.dll, user32.dll, gdi32.dll.бібліотеки функцій Win API. Найчастіше функції містяться у файлах kernel32.dll, user32.dll, gdi32.dll. 3. Системні процеси. Менеджер сесій (Session manager, smss.exe). Запускається першим і запускає процес реєстрації в системі.Менеджер сесій (Session manager, smss.exe). Запускається першим і запускає процес реєстрації в системі. Процес реєстрації в системі (winlogon.exe) відповідає за допуск користувача в систему.Процес реєстрації в системі (winlogon.exe) відповідає за допуск користувача в систему. Диспетчер керування службами (services.exe) відповідає за запуск служб планувальника задач, журналу подій, відновлення системи, служби баз даних та веб-сервісів.Диспетчер керування службами (services.exe) відповідає за запуск служб планувальника задач, журналу подій, відновлення системи, служби баз даних та веб-сервісів. 4. Прикладні програми.

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

Література: 1. Шеховцов В. А. Операційні системи. – К.: BHV, с. 2. Таненбаум. Э. Современные операционные системы.2-е изд. – СПб.: Питер, – 1040 с.