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