- •1.Основні складові системного програмного забезпечення.
- •2.Охарактеризуйте узагальнену структуру програмного забезпечення обчислювальних систем.
- •3.Типова структура системного програмного забезпечення.
- •4.Основні функції операційної системи.
- •5.Охарактеризуйте основні типи операційних систем.
- •1. За призначенням.
- •4. За способом побудови
- •6.Основні концепції побудови операційних систем.
- •7.Класифікація ос, за призначенням.
- •8.Класифікація ос, за режимом обробки задач.
- •9.Класифікація ос, за способами побудови.
- •10.Охарактеризуйте підсистему керування ресурсами
- •11.Охарактеризуйте підсистему керування введенням-виведенням.
- •12. Охарактеризуйте підсистему керування файлами та файлові системи.
- •17. Багаторівневі операційні системи
- •18. Операційні системи з мікроядром
- •19.Концепція віртуальних машин в побудові операційних систем
- •20.Засоби апаратної підтримки операційних систем
- •21.Інтерфейс прикладного програмування
- •22.Варіанти реалізації інтерфейсу прикладного програмування
- •23.Особливості базової архітектури ос unix.
- •24.Призначення ядра ос Linux та його особливості.
- •25.Концепція модулів ядра в ос Linux.
- •26.Основні компоненти архітектури ос Windows.
- •27. Призначення рівня абстрагування від апаратури в ос Windows.
- •28. Основні компоненти підсистеми виконання в ос Windows.
- •29.Об’єктна модель архітектури ос Windows.
- •30. Розкрийте поняття „обчислювальний процес”.
- •31. Основні стани обчислювального процесу.
- •32. Умови переходу обчислювального процесу із стану в стан.
- •33. Призначення та основні функції блоку керування процесами (pcb).
- •34. Потоки („нитки”), призначення та застосування.
- •35. Поняття „переривання” та їх призначення.
- •36. Основні групи „переривань” та події, що їх викликають.
- •37.Обробка „переривань” та механізм перемикання контексту „переривань”.
- •38.Механізми, що використовуються для планування процесорів.
- •39.Інтервальний таймер, призначення та застосування у плануванні процесорів.
- •40.Пріоритети, призначення та застосування у плануванні процесорів.
- •41.Планування процесорів за принципом fifo.
- •42.Циклічне планування завантаження процесорів.
- •43.Планування завантаження процесорів за принципом „найкоротше завдання-перший”.
- •44.Планування завантаження процесорів за „найменшим часом, що залишився”.
- •45.Планування процесорів із використанням багаторівневих черг зі зворотними зв’язками.
- •46. Витісняючі та невитісняючі алгоритми планування процесів.
- •47. Рівні планування процесів.
- •48. Задачі, що вирішуються на кожному з рівнів планування процесів.
- •49. Основні вимоги до планування процесів.
- •50.Планування процесів з переключенням та без переключення.
- •51.Особливості процесів в ос unix.
- •52.Недоліки традиційної багатопотоковості в Linux.
- •54.Особливості планування потоків у ос Windows.
- •55.Створення потоків у ос Windows
- •56.Особливості планування потоків у ос Windows.
- •57.Планування потоків у ос Windows: пріоритети.
- •58.Планування потоків у ос Windows: вибір кванту часу.
- •59.Планування потоків у ос Windows: динамічна зміна пріоритету та кванту часу.
54.Особливості планування потоків у ос Windows.
Ядро Windows XP розв'язує під час планування дві основні задачі :
• облік відносних пріоритетів, присвоєних кожному потокові;
• мінімізацію часу відгуку інтерактивних застосувань.
Базовою одиницею планування є потік. Під час планування ядро не розрізняє потоки різних процесів, воно має справу з пріоритетами потоків, готових до вико нання в певний момент часу.
Під час планування ядро працює з мінімальними версіями потоків (блоками KTHREAD). У них зберігається така інформація, як загальний час виконання по току, його базовий і поточний пріоритет, диспетчерський стан потоку (готовність, очікування, виконання тощо).
55.Створення потоків у ос Windows
Основним засобом створення потоків у Windows ХР є функція CreateThreadO Win32 АРІ. Етапи виконання цієї функції:
1. В адресному просторі процесу створюється стек режиму користувача для потоку.
2. Ініціалізація апаратного контексту потоку (у процесор завантажують дані, що визначають його стан). Цей крок залежить від архітектури процесора.
3. Створення об'єкту-потоку виконавчої системи у призупиненому стані, для чого в режимі ядра:
а) створення та ініціалізація структури даних потоку (блоки ETHREAD, KTHREAD, ТЕВ);
б) задавання стартової адреси потоку (використовуючи передану як параметр адресу процедури потоку);
в) задавання інформації для підсистеми безпеки та ідентифікатор потоку;
г) виділення місця під стек потоку ядра.
4. Підсистемі Win32 повідомляють про створення нового потоку.
5. Дескриптор та ідентифікатор потоку повертають у процес, що ініціював створення потоку (викликав CreateThreadO).
6. Початок виконання потоку (виконують перехід за стартовою адресою).
56.Особливості планування потоків у ос Windows.
Ядро Windows XP розв'язує під час планування дві основні задачі :
• облік відносних пріоритетів, присвоєних кожному потокові;
• мінімізацію часу відгуку інтерактивних застосувань.
Базовою одиницею планування є потік. Під час планування ядро не розрізняє потоки різних процесів, воно має справу з пріоритетами потоків, готових до вико нання в певний момент часу.
Під час планування ядро працює з мінімальними версіями потоків (блоками KTHREAD). У них зберігається така інформація, як загальний час виконання по току, його базовий і поточний пріоритет, диспетчерський стан потоку (готовність, очікування, виконання тощо).
57.Планування потоків у ос Windows: пріоритети.
Кожному потокові присвоюють пріоритет, заданий числом у діапазоні від 1 до 31 (що більше число, то вище пріоритет).
Розрізняють такі класи пріоритету процесів: реального часу (real-time, приблизно відповідає пріоритету потоку 24); високий (high, 13); нормальний (normal, 8); невикористовуваний (idle, 4). Відносні пріоритети потоку бувають такі: найвищий (+2 до базового); вище за нормальний (+1 до базового); нормальний (дорівнює базовому); нижче за нормальний (-1 від базового); найнижчий (-2 від базового). Є два додаткових модифікатори відносного пріоритету: критичний за часом (time-critical) і невикористовуваний (idle). Перший модифікатор тимчасово задає для потоку пріоритет 15 (найвищий динамічний пріоритет), другий аналогічним чином задає пріоритет 1.
