- •Лекція 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.
8. Уникнення взаємоблокувань шляхом порушення умов їх здійснення
Якщо в системі немає ресурсів, які відданні в одноосібне користування одному процесу, то система не попаде в тупік. Але якщо дозволити двом процесам одночасно друкувати данні на прінтері, то відбудеться змішування інформації. Використовуючи підкачку результуючих даних для друку, декілька процесів можуть одночасно генерувати результуючі дані (спулінг-підкачка). В такій моделі тільки один процес, який фактично вимагає фізичного принтера, є демоном принтера (схована від користувача службова програма, що працює в фоновому режимі). Оскільки ця програма не потребує інших ресурсів, то для прінтера тупіки виключаються.
Якщо процеси, що займають деякі ресурси, вберегти від очікування решти ресурсів, то зникає ситуація взаємоблокування. Один з способів досягнення цієї мети полягає у вимозі: будь-який процес повинен вимагати всі необхідні ресурси до початку роботу. Якщо всі ресурси доступні, то процес отримує все, що йому потрібно; якщо один або декілька ресурсів зайняті, то процесу потрібно чекати.
Хоча є ще такий метод: процес, що потребує ресурсу, повинен спочатку вивільнити всі решту ресурсів.
Систематизація ресурсів за допомогою їх нумерації усуває проблему взаємоблокувань, але бувають ситуації, коли неможливо знайти порядок, що задовільняє всіх. Коли ресурси включають в себе області таблиці процесів, дисковий простір для підкачки даних, закриті записи бази даних і інші абстрактні ресурси, число потенційних ресурсів і варіантів їх застосувань може бути досить великим, що жодна систематизація не зможе працювати.
Лекція 6. Основні поняття керування пам’яттю.
1.Однозадачна система без підкачки на диск.
Системи керування пам'яттю розділяють на класи :
Ті, що переміщають процеси між ОП і диском під час їх виконання, тобто здійснюючи підкачку процесів повністю swapping або використовуючи сторінкову підкачку spaging;
Ті, що цього не роблять.
Найпростішою з можливих схем керування пам’яттю є та, при якій в кожен конкретний момент часу працює лише одна програма. При цьому пам'ять розподіляється між програмою і ОС. На рис. 6.1 показано три варіанти такої схеми.
Рис. 6.1. Три прості моделі організації пам’яті, при наявності ОС і одного користувацького процесу.
2.Багатозадачність з фіксованими розділами
Рис.6.2.Фіксовані розділи пам’яті з окремими вхідними чергами для кожного
розділу (а), фіксовані розділи пам’яті з однією чергою на вхід (б).
Більшість сучасних систем дозволяють одночасний запуск декількох процесів. Багатозадачність збільшує завантаженість центрального процесора. Найпростіший спосіб досягнення багатозадачності представляє собою простий розподіл пам’яті на N можливо нерівних розділів. Оскільки в даній схемі розміри розділів не змінюються, то увесь простір в розділі який не використовується процесом не використовується.
Недоліком сортування вхідних процесів по окремих чергах є те, що наприклад на рис.6.2. (а) для великого завдання не має черг. Альтернативна схема на рис.6.2. (б). В черзі відшуковується велике завдання і поміщається в пам’ять, а менші завдання ігноруються, тому для них потрібно створювати хоча б один малий розділ. При цьому підході (рис.6.(б)) встановлюється правило: задачу, що має право бути вибраною для обробки, можна пропустити не більше к разів. Після цього її вже не пропускають (використовуються лічильник).