- •Лекція 1. Вступ до операційних систем.
- •1.Поняття про операційні системи та їх місце в загальній структурі комп’ютера.
- •2. Основні функції операційної системи : розширення можливостей комп’ютера та керування його ресурсами.
- •3. Історія операційних систем.
- •Лекція 2. Структура операційної системи.
- •Таблиця 2.1
- •Екзоядро
- •Модель клієнт-сервер
- •Лекція 3. Концепція процесу
- •Лекція 4. Потоки в операційних системах.
- •3. Міжпроцесна взаємодія.
- •4.Примітиви міжпроцесної взаємодії.
- •5.Семафори та їх використання.
- •6.Поняття м’ютекса.
- •7.Поняття моніторів.
- •8.Поняття про бар’єри.
- •9.Поняття про системи передачі повідомлень.
- •Лекція 5. Взаємоблокування.
- •2.Умови та моделювання взаємоблокувань.
- •3.Виявлення та усунення взаємоблокувань.
- •4.Уникнення взаємоблокувань при наявності декількох ресурсів кожного типу.
- •6. Уникнення взаємоблокувань.
- •7. Алгоритм банкіра для одного та декількох видів ресурсів.
- •8. Уникнення взаємоблокувань шляхом порушення умов їх здійснення
- •Лекція 6. Основні поняття керування пам’яттю.
- •1.Однозадачна система без підкачки на диск.
- •2.Багатозадачність з фіксованими розділами
- •3.Поняття про підкачку даних.
- •5.Віртуальна пам’ять. Основні поняття.
- •6.Віртуальна пам’ять. Сторінкова організація пам’яті.
- •7.Характеристика основних алгоритмів заміщення сторінок.
- •Лекція 7. Принципи роботи апаратури введення-виведення.
- •1.Пристрої введення-виведення.
- •2.Переривання персональної кс.
- •Лекція 8.
- •Лекція 9.
- •Лекція 10. Файли та їх властивості.
- •1.Поняття файлової системи.
- •2.Іменування файлів.
- •3.Структура файлу.
- •4.Типи файлів.
- •5.Доступ до файлів. Атрибути файла.
- •6.Файли, відображувані на адресній простір памяті.
- •7.Каталоги.
- •Лекція 11. Реалізація файлової системи.
- •1.Структура файлової системи.
- •2.Реалізація файлів.
- •3.Реалізація каталогів.
- •Лекція 12 Планування в системах з одним процесором.
- •1.Поняття про планування.
- •2.Типи планування процесора.
- •3.Планування вводу-виводу.
- •Лекція 13. Критерії планування.
- •1.Критерії короткотривалого планування.
- •2.Використання пріоритетів.
- •3.Альтернтитвні стратегії планування
- •Лекція 14. Стратегії планування.
- •1.Стратегія планування „першим прийшов – першим обслуговується”.
- •2.Стратегія”кругове планування” .
- •4.Вибір самого короткого процесу.
- •5.Стртегія найменшого часу, що залишився.
- •7.Зниження пріорітету.
- •Лекція 15. Багатопроцесорне планування і планування реального часу.
- •1. Класифікація багатопроцесорних систем.
- •3.Задачі планування в багатопроцесорній системі.
- •4. Планування процесів.
- •5.Планування потоків.
- •Лекція 16. Основні підходи до планування потоків.
- •1.Розділення навантаження.
- •2.Бригадне планування.
- •3.Призначення процесорів.
- •4.Динамічне планування.
- •Лекція 17. Планування реального часу.
- •Лекція 18.
- •4. Парадигми.
- •5. Реалізація операційної системи
- •Лекція 19. Операційні системи типу unix.
- •1.Історичні відомості про операційні системи типу unix.
- •2.Загальна архітектура системи unix.
- •3.Сучасні системи unix.
- •4.Історія виникнення операційної системи Linux.
- •5.Модульна структура операційної системи Linux.
- •6.Традиційне планування unix.
- •Лекція 20. Характеристики операційної системи Windows 2000.
- •1. Історія виникнення Windows.
- •Лекція 21. Особливості архітектури Windows xp.
- •1. Основні компоненти Windows xp.
7.Характеристика основних алгоритмів заміщення сторінок.
Оптимальний алгоритмзамінює ту сторінку звернення до якої відбувалось раніше іншої, які є в даний момент в пам’яті. Але, не існує способу вираження того, яка сторінка буде останньою, тому даний алгоритм не може бути використаний на практиці. Його використовують в якості тестової задачі, відносно якої можна оцінити інші алгоритми.
Алгоритм NRUділить сторінку 4 класи в залежності від стану бітів (R-звернення, N- змінна). Вибирається будь-яка сторінка з класу з найменшим номером.
Алгоритм «другої спроби» - це модифікація алгоритму FIFO. Він перед видаленням сторінки з пам’яті перевіряє, чи використовується вона в даний момент, якщо так, то така сторінка пропускається. Це значно підвищує продуктивність.
Алгоритм «годинник» -представляє собою всього лише друге здійснення алгоритму «другої спроби». Він має ті ж самі характеристики продуктивності, але вимагає менше часу на виконання алгоритму.
Алгоритм NFU - представляє собою спробу апроксимації (наближення) алгоритму LRU. Він не дуже добрий, але є алгоритмом старіння, який набагато краще апроксимує алгоритм LRU і може бути ефективно реалізований.
В результаті аналізу двома найкращими алгоритмами є алгоритм старіння та WSClock, які базуються на алгоритмі LRU і понятті робочого набору відповідно.
Лекція 7. Принципи роботи апаратури введення-виведення.
1.Пристрої введення-виведення.
Однією з найважливіших функцій ОС є керування всіма пристроями введення-виведення ПК. ОС дає пристроям команди перехоплювати переривання і обробляти помилки. Вона повинна також забезпечити простий і зручний інтерфейс між пристроями введення-виведення і рештою системи.
Інтерфейс на скільки це можливо, повинен бути однаковим, для всіх пристроїв введення-виведення. Програмне забезпечення пристроїв введення-виведення складає суттєву частину ОС. Різні спеціалісти розглядають апаратуру введення-виведення з різних точок зору. Інженери-електронщики в першу чергу бачать в них мікросхеми, джерело живлення та інші фізичні компоненти. Програмісти в першу чергу звертають увагу на інтерфейс, який надається ПЗ.
Блочними пристроями називаються пристрої, які зберігають інформацію у вигляді блоків фіксованого розміру, при чому у кожного блоку є адреса. Розміри блоків змінюються від 521-32768 байт. Важливою властивістю є те, що кожен його блок може бути прочитаний незалежно від інших блоків. Найбільш поширеними блочними пристроями є диски.
До символьних пристроїв відносяться: принтери, мережні інтерфейсні карти і маніпулятори мишки.
Пристрої введення-виведення покривають великий діапазон швидкостей, що створюють певні труднощі для програмного забезпечення. Ці пристрої найчастіше складаються з механічної та електронної частин.
Інтерфейс між пристроєм і контролером найчастіше є інтерфейсом низького рівня. Робота контролера полягає в конвертуванні послідовного потоку бітів в блок байтів і виконанні корекції помилок, якщо це необхідно.
В кожного контролера є декілька регістрів за допомогою яких з ним може спілкуватись центральний процесор. За допомогою запису в регістри ОС наказує пристрою надати чи прийняти дані, ввімкнутись чи вимкнутись і т. д. Читаючи з цих регістрів ОС може дізнатись про стан пристрою. Крім керуючих регістрів в багатьох пристроях є буфер даних з якого ОС може читати дані, а також записувати дані в нього.
Існує 2 альтернативних способи реалізації доступу до керуючих регістрів і буферів даних пристроїв введення-виведення. Перший варіант полягає в тому, що кожному керуючому регістру призначається номер порта пристрою введення-виведення (8 або 16 розрядне ціле число). Другий підхід базується на відображені всіх керуючих регістрів периферійних пристроїв на адресний простір пам’яті. Кожному керуючому регістру призначається унікальна адреса в пам’яті. Така система називається відображенням на адресний простір пам’яті.
ЦП може запитувати дані від контролера введення-виведення по одному байту. Але подібна схема є неефективною. Тому на практиці часто застосовується інша схема, яку називають прямим доступом до пам’яті, ПДП (DMA). ОС може скористатись DMA тільки при наявності DMA контролера, який є у більшості КС.