
- •Тема 1: Основні поняття обчислювальних систем Призначення та склад системного програмного забезпечення
- •Основні концепції операційних систем
- •Типи операційних систем
- •Основні етапи розвитку операційних систем
- •Функціональні компоненти операційних систем
- •Керування процесами й потоками
- •Керування ресурсами
- •Керування введенням-виведенням
- •Керування файлами та файлові системи
- •Мережна підтримка
- •Тема 2: Архітектура операційних систем Основні принципи побудови операційних систем
- •Принцип модульності
- •Принцип функціональної вибірковості
- •Принцип здатності до генерування
- •Принцип функціональної надмірності
- •Принцип віртуальності
- •Принцип незалежності програм від зовнішніх пристроїв
- •Принцип сумісності
- •Принцип відкритої і нарощуваної ос
- •Принцип мобільності (переносимості)
- •Принцип забезпечення безпеки обчислень
- •Базові поняття архітектури операційних систем
- •Ядро операційної системи
- •Монолітні системи
- •Багаторівневі системи
- •Системи з мікроядром
- •Концепція віртуальних машин
- •Засоби апаратної підтримки операційних систем
- •Інтерфейс прикладного програмування
- •Варіанти реалізації api
- •Особливості архітектури unix і Linux
- •Особливості побудови ос Linux
- •Особливості архітектури Windows xp
- •Компоненти режиму ядра
- •Компоненти режиму користувача
- •Об’єктна архітектура Windows xp
- •Тема 3: Процеси та потоки
- •Базові поняття процесів та потоків
- •Блок керування процесом
- •Операції над процесами
- •Обробка переривань
- •Алгоритми планування процесів
- •Витісняючі та невитісняючі алгоритми планування
- •Нитки, потоки (Thread)
- •Керування процесорами
- •Планування з переключення та без переключення
- •Лекція 4: Ядро операційної системи
- •Основні функції ядра
- •Асинхронні паралельні процеси
- •Взаємо-виключення
- •Семафори
- •Кільцевий буфер
- •Конвеєр (програмний канал)
- •Черги повідомлень (Queue)
- •Лекція 5. Керування ресурсами
- •Керування пам’яттю
- •Ієрархія пам’яті
- •Розподіл пам’яті
- •Зв’язний розподіл пам’яті для одного користувача
- •Мультипрограмування з фіксованими розділами
- •Мультипрограмування із змінними розділами
- •Боротьба з фрагментацією
- •Стратегії розміщення інформації в пам’яті
- •Системи з розподілом часу. Сторінкова організація пам’яті. Концепція віртуальної (уявної) пам’яті.
- •Принцип кешування даних
- •Лекція 6. Керування даними Файлова система
- •Функції файлової системи
- •Ієрархія даних
- •Об’єднання в блоки та буферизація
- •Організація файлів
- •Методи доступу
- •Характеристики файлів
- •Файлова система
- •Виділення та звільнення місця в пам’яті
- •Зв’язаний розподіл пам’яті
- •Незв’язаний розподіл пам’яті
- •1) Розподіл за допомогою списків секторів
- •2) Поблочний розподіл
- •Дескриптор файлу (file descriptor)
- •Матриця керування доступом
- •Керування доступом в залежності від класів користувачів
- •Копіювання та відновлення інформації
- •Планування роботи з дисковою пам’яттю
- •Призначення планування
- •Цільові характеристики принципів планування
- •Оптимізація пошуку циліндру
- •Оптимізація за часом очікування записів
- •Архітектура сучасних файлових систем
- •Лекція 8. Основи організації ms-dos
- •Будова та функції основних складових дос
- •Керування пам’яттю
- •Відображена пам’ять
- •Розширена пам’ять
- •Висока пам’ять
- •Верхня пам’ять
- •Драйвери верхньої та розширеної пам’яті
- •Завантажувані модулі com та exe – файли
- •Логічна структура диску в ms-dos
- •Формат елементів таблиці розділів
- •Запис завантаження (boot)
- •Використання boot-сектору
- •Визначення формату fat
- •Формат fat
- •Файли та каталоги
- •Недоліки ms-dos
- •Переваги які надає користувачам Windows
- •Windows як операційна оболонка
- •Обмін даними в Windows
- •Зв’язування чи вбудовування
- •Первинність повідомлень: механізм повідомлень
- •Незалежна (preemptive) багатозадачність
- •Взаємодія 32– та 16–розрядних кодів
- •Робота з 16–розрядними продуктами
- •Робота з dos–продуктами
- •Робота 32–розрядних Windows–продуктів
- •Вдосконалення розподілу системних ресурсів
- •Vcache – 32–розрядний дисковий кеш
- •Варіанти модифікацій ос Windows xp
- •Нові характеристики реалізовані в Windows xp
- •Продуктивність
- •Лекція 8. Ос unix
- •Ядро ос unix
- •Генерування ос
- •Процеси
- •Початкове завантаження. Процеси 0 та 1
- •Файлова система unix
- •Будова файлової системи unix
- •Каталоги
- •Тема 1: Основні поняття обчислювальних систем 1
- •Тема 2: Архітектура операційних систем 9
- •Тема 3: Процеси та потоки 25
Принцип функціональної надмірності
Цей принцип враховує можливість проведення однієї і тієї ж роботи різними засобами. До складу ОС може входити декілька типів моніторів (модулів супервізора, керування тим чи іншим видом ресурсу), різні засоби організації комунікацій між обчислювальними процесами. Наявність декількох типів моніторів, декількох систем управління файлами дозволяє користувачам швидко і найбільш адекватно адаптувати ОС до певної конфігурації обчислювальної системи, забезпечити максимально ефективне завантаження технічних засобів та отримати максимальну продуктивність при рішенні заданого класу задач.
Принцип віртуальності
Побудова віртуальних ресурсів, їх розподіл і використання тепер застосовуються практично в будь-якій ОС. Цей принцип дозволяє представити структуру системи у вигляді певного набору планувальників процесів і розподільників ресурсів (моніторів) і використовувати єдину централізовану схему розподілу ресурсів. Найприроднішим і закінченим проявом концепції віртуальності є поняття віртуальної машини. По суті, будь-яка операційна система, будучи засобом розподілу ресурсів і організовуючи за певними правилами управління процесами, приховує від користувача і його додатків реальні апаратні і інші ресурси, замінюючи їх деякою абстракцією. В результаті користувачі бачать і використовують віртуальну машину як якийсь пристрій, здатний сприймати їх програми, написані на певній мові програмування, виконувати їх і видавати результати. При такому мовному представленні, користувача абсолютно не цікавить реальна конфігурація обчислювальної системи, способи ефективного використовування її компонентів і підсистем. Він мислить і працює з машиною в термінах мови, що використовується ним і тих ресурсів, які йому надаються в рамках віртуальної машини.
Реалізація цього принципу дозволяє такій ОС мати дуже сильну перевагу перед аналогічними ОС, що не мають такої властивості. Прикладом реалізації принципу віртуальності може служити VDM-машина (virtual DOS machine) – захищена підсистема, що надає повне середовище MS‑DOS і консоль для виконання MS-DOS додатків. Одночасно може виконуватися практично довільне число VDM-сесій. Такі VDM-машини є і в системах Microsoft Windows, і в OS/2.
Принцип незалежності програм від зовнішніх пристроїв
Цей принцип реалізується зараз в переважній більшості ОС загального використання. Він найбільш чітко проявляється в організації уведення-виведення. Мабуть, вперше найбільш послідовно даний принцип був реалізований в ОС UNIX. Нагадаємо, цей принцип полягає в тому, що зв’язок програм з конкретними пристроями проводиться не на рівні трансляції програми, а в період планування її виконання. В результаті перекомпіляція при роботі програми з новим пристроєм, на якому розташовуються дані, не потрібна.
Принцип дозволяє однаково здійснювати операції управління зовнішніми пристроями незалежно від їх конкретних фізичних характеристик. Наприклад, програмі, що містить операції обробки послідовного набору даних, байдуже, на якому носії ці дані розташовуватимуться. Зміна носія і даних, розміщуваних на них (при незмінності структурних характеристик даних), не принесе яких-небудь змін в програму, якщо в системі був реалізований цей принцип незалежності.