
- •Системне програмне забезпечення Конспект лекцій з дисципліни „Системне програмне забезпечення”
- •2 Концептуальні основи ос.....................................................................................16
- •2.4 Концепція віртуалізації....................................................................................28
- •2.5 Концепція переривань.....................................................................................30
- •5 Операційна система unix....................................................................................57
- •1 Операційні системи та середовища
- •Основні означення та терміни
- •Сучасні системи програмування
- •Віртуальний адресний простір
- •Операційні системи для персональних комп’ютерів
- •1.5 Принципи побудови ос
- •1.5.1 Модульність
- •1.5.2 Функціональна вибірковість
- •1.5.3 Генерованость ос
- •1.5.4 Функціональна надлишковість
- •1.5.5 Незалежність програм від зовнішніх пристроїв
- •1.5.7 Відкритість та нарощуваність ос
- •1.5.9 Забезпечення безпеки обчислень
- •1.5.10 Принципи проектування ос
- •2 Концептуальні основи ос
- •2.1 Процеси
- •2.1.1 Означення процесу та граф його існування
- •2.1.2 Класифікування процесів
- •2.2 Ресурс
- •2.2.1 Означення ресурсу
- •2.2.2 Властивості та класифікування ресурсів
- •2.3 Система керування процесами
- •2.3.1 Дворівнева система керування процесами
- •2.3.2 Дисципліни розподілу процесів
- •2.4 Концепція віртуалізації
- •2.5 Концепція переривань
- •3 Захищений режим 32-розрядних процесорів
- •3.1 Основні поняття захищеного режиму
- •3.2 Сегментний механізм віртуалізації пам’яті
- •3.3 Сторінковий механізм віртуалізації пам’яті
- •4 Архітектура операційних системWindows
- •4.1 Архітектура ос Windows 98se
- •4.1.1 Драйвери пристроїв
- •4.1.2 Диспетчер віртуальних машин
- •4.1.3 Встановлювані файлові системи
- •4.1.4 Диспетчер конфігурування
- •4.1.5 Диспетчер драйверів wdm
- •4.1.6 Ядро Windows 98se
- •4.1.8 Оболонка ос
- •4.1.9 Стандартні програми Windows 98se та додатки
- •4.2 Мережна підтримка ос Windows 98se
- •4.2.1 Взаємодія відкритих систем
- •4.2.2 Мережна архітектура Windows 98se
- •4.3 Апаратна підтримка захисту ос
- •4.4 Особливості розподілу оперативної пам’яті в ос Windows nt
- •4.5 Архітектура Windows 2000
- •5 Операційна система unix
- •5.1 Загальна характеристика ос сімейства unix
- •5.2 Архітектура операційної системи unix
- •5.3 Функціонування ос unix
- •5.3.1 Ядро системи
- •5.3.2 Файлова підсистема
- •5.3.3 Підсистема керування процесами та пам’яттю
- •5.3.4 Підсистема введення/виведення
- •5.3.5 Користувачі ос unix
- •5.4 Поняття процесу в ос unix
- •5.4.1 Компоненти процесу
- •5.4.2 Ідентифікатор процесу
- •5.4.2.1 Ідентифікатор батьківського процесу
- •5.4.2.2 Ідентифікатор користувача та групи
- •5.4.3 Стани процесу в unix
- •5.4.4 Керування процесами
- •5.5 Права доступу ос unix
- •5.5.1 Поняття прав доступу користувача
- •5.5.2 Основні біти доступу
- •5.5.3 Додаткові біти доступу
- •5.5.4 Сполучення бітів доступу
- •5.6 Мережні можливості ос unix
- •Список рекомендованої літератури:
1.5 Принципи побудови ос
1.5.1 Модульність
Засоби виокремлення складових частин ОС до окремих модулів зреалізовуються найчастіше за функціональною ознакою. Модулем називається функціонально закінчений елемент системи, узгоджений з прийнятими міжмодульними інтерфейсами. За наявності необхідних інтерфейсів один модуль може бути легко замінений на інший при збереженні цілісності системи.
Модулям властиві такі особливості:
Привілейований модуль працює за вимкненої системи переривань. Цей модуль виконується до кінця, після чого його можна знову викликати для виконання іншого завдання. На рис. 1.3 показано структуру привілейованого модуля, який діє як поперемінно розподілюваний ресурс. Як приклад можна назвати модулі ядра ОС.
Рисунок 1.3 – Структура привілейованого модуля
Непривілейований модуль може бути перервано під час роботи, причому проміжні результати, отримані перед перериванням, можуть загубитись.
Модуль може бути одноразово використовувано, після чого він потребує відновлення.
Реентерабельні модулі дозволяють багаторазове переривання і повторний запуск з інших процесів. Вони забезпечують зберегання проміжних результатів, отриманих до переривання, і повернення до них, коли обчислювальний процес відновлюється з перерваної точки. Це зреалізовується за допомогою статичних або динамічних методів виділення пам’яті під проміжні дані.
Повторно входимі модулі припускають власне багаторазове паралельне використовування, але їх не можна переривати.
Найбільший ефект від використання принципу модульності досягається при поширенні його на ОС, додатки та апаратну платформу одночасно.
1.5.2 Функціональна вибірковість
В ОС видокремлюється певна частка важливих модулів, які повинні постійно перебувати у оперативній пам’яті – ядро. З одного боку, до складу ядра мають входити найбільш часто використовувані системні модулі, а з другого, – обсяг пам’яті для ядра не має бути надто великим. До складу ядра входять модулі керування системою переривань, засоби формування черг, керування процесами, розподілу ресурсів. Окрім ядра, до ОС входять модулі, які завантажуються до оперативної пам’яті лише в разі необхідності (диск-резидентні).
1.5.3 Генерованость ос
Ядро та основні компоненти, які мають постійно перебувати в оперативній пам’яті, створюються у такий спосіб, щоби їх можна було налаштовувати, виходячи з конкретної конфігурації конкретного обчислювального комплексу та кола розв’язуваних задач. ОС являє собою сукупність системних наборів модулів та даних. Принцип модульності спрощує генерування ОС під конкретний склад обладнання, що здійснюється на етапі інсталяції.
1.5.4 Функціональна надлишковість
Цей принцип забезпечує можливість проведення однієї роботи різними засобами. До складу ОС може входити кілька модулів супервізорів, кожний з яких складається з кількох: супервізор введення/виведення, переривань, програм, диспетчер завдань, різні засоби організації комунікацій поміж обчислювальними процесами. Це дозволяє оперативно адаптувати ОС до конкретної конфігурації обчислювальної системи з метою забезпечення її максимальної ефективності.