- •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: динамічна зміна пріоритету та кванту часу.
11.Охарактеризуйте підсистему керування введенням-виведенням.
Операційна система відповідає за керування пристроями введення-виведення, підключеними до комп'ютера. Підтримка таких пристроїв в ОС звичайно здійснюється на двох рівнях. До першого, нижчого, рівня належать драйвери пристроїв —програмні модулі, які керують пристроями конкретного типу з урахуванням усіхїхніх особливостей. До другого рівня належить універсальний інтерфейс введення-виведення, зручний для використання у прикладних програмах.
ОС має реалізовувати загальний інтерфейс драйверів введення-виведення, через який вони взаємодіють з іншими компонентами системи. Такий інтерфейс дає змогу спростити додавання в систему драйверів для нових пристроїв.
Сучасні ОС надають великий вибір готових драйверів для конкретних периферійних пристроїв. Що більше пристроїв підтримує ОС, то більше в неї шансів на практичне використання.
12. Охарактеризуйте підсистему керування файлами та файлові системи.
Для користувачів ОС і прикладних програмістів дисковий простір надається у вигляді сукупності файлів, організованих у файлову систему.
Файл — це набір даних у файловій системі, доступ до якого здійснюється за іменем. Термін «файлова система» може вживатися для двох понять: принципу організації даних у вигляді файлів і конкретного набору даних (зазвичай відповідної частини диска), організованих відповідно до такого принципу. У рамках ОС може бути реалізована одночасна підтримка декількох файлових систем.
Файлові системи розглядають на логічному і фізичному рівнях. Логічний рівень визначає зовнішнє подання системи як сукупності файлів (які звичайно перебувають у каталогах), а також виконання операцій над файлами і каталогами (створення, вилучення тощо). Фізичний рівень визначає принципи розміщення структур даних файлової системи на диску або іншому пристрої.
13. Призначення та особливості ядра операційної системи
Основним завданням ядра є якомога ефективніше завантаження процесорів системи. Ядро постійно перебуває в пам’яті, послідовність виконання його інструкцій може порушити тільки переривання (під час виконання коду ядра багатозадачність не підтримується). Для прискорення роботи ядро ніколи не перевіряє правильність параметрів, переданих під час виклику його функцій.
14. Основні функції ядра операційної системи.
Основні функції ядра операційної системи.
До його основних функцій належать:
- перемикання контексту, збереження і відновлення стану потоків;
- планування виконання потоків;
- реалізація засобів підтримки апаратного забезпечення, складніших за засоби HAL (наприклад, передача керування оброблювачам переривань).
15. Основні види архітектури операційних систем.
Основні види архітектур ОС:
- Монолітні системи
- Багаторівневі системи
- Системи з мікроядром
- Концепція віртуальних машин
16. Операційні системи з монолітним ядром
ОС, у яких усі базові функції сконцентровані в ядрі, називають монолітними системами. У разі реалізації монолітного ядра ОС стає продуктивнішою (процеcop не перемикається між режимами під час взаємодії між її компонентами), але менш надійною (весь її код виконується у привілейованому режимі, і помилка в кожному з компонентів є критичною).
Монолітність ядра не означає, що всі його компоненти мають постійно перебувати у пам’яті. Сучасні ОС дають можливість динамічно розміщувати в адресному просторі ядра фрагменти коду (модулі ядра). Реалізація модулів ядра дає можливість також досягти його розширюваності (для додання нової функціональності досить розробити і завантажити у пам’ять відповідний модуль).
У монолітному ядрі визначають рівні, перелічені нижче.
- Засоби абстрагування від устаткування
- Базові засоби ядра
- Засоби керування ресурсами (або менеджери ресурсів)
- Інтерфейс системних викликів
