
- •1. Поняття про операцiйнi системи та їх мiсце в загальнiй структурi комп’ютера.
- •2. Основнi функцiї операцiйної системи.
- •3. Розподiл керування ресурсами комп’ютера.
- •4. Iсторiя операцiйних систем.
- •6. Центральний процесор комп’ютера.
- •7. Пам’ять комп’ютера.
- •8. Поняття про пристрої вводу-виводу комп’ютера.
- •9. Основнi вiдомостi про структуру комп’ютера Pentium.
- •10. Основнi поняття операцiйної системи.
- •11. Загальна структура операцiйних систем.
- •13. Модель клiєнт-сервер.
- •14. Поняття процесу.
- •15. Модель процесу.
- •16. Створення процесу.
- •21. Поняття про потоки.
- •25. Семафори та їх використання.
- •26. Поняття м’ютекса.
- •27. Поняття монiторiв.
- •28. Поняття бар’єрiв.
- •29. Розробка систем передачi повiдомлень.
- •30. Основнi поняття взаємо блокування.
- •31. Умови та моделювання взаємо блокування.
- •32.Виявлення та усунення взаємоблокування
- •33. Уникнення взаємо блокувань при наявностi декiлькох ресурсiв кожного типу.
- •34. Вихiд iз взаємо блокування.
- •35. Уникнення взаємо блокувань.
- •36. Алгоритм банкiра для одного та декiлькох видiв ресурсiв.
- •37. Уникнення взаємо блокувань.
- •38. Однозадачна система без пiдкачки даних.
- •39. Багатозадачнiсть з фiксованими розмiрами.
- •40. Поняття про пiдкачку.
- •41. Облiк використання пам’ятi, яка видiляється.
- •42. Вiртуальна пам’ять. Основнi поняття.
- •43. Вiртуальна пам’ять. Сторiнкова органiзацiя пам’ятi.
- •44. Характеристика основних алгоритмiв замiщення сторiнок
25. Семафори та їх використання.
В 1965 р. Дейкстра цiлу змiнну для пiдрахунку сигналiв в запуску збережених на майбутнє. Ним був запропонований новий тип змiнних семафори, значення яких можна було 0 у випадку вiдсутностi збережених сигналiв активiзацiї або деяким додатнiм числом, яке вiдповiдає кiлькостi вiдкладених активiзуючи сигналiв. Дейкстра запропонував 2 операцiї Down i Up. Операцiя Down порiвнює значення семафора з 0. Якщо значення семафора бiльше 0, то операцiя Down зменшує її. Якщо значення семафора = 0, то процедура Down не повертає керування процесу, а процес переводиться в стан очiкування. Операцiя Up збiльшує значення семафора. Якщо з цим семафором пов’язанi 1 або декiлька очiкуваних процесiв, якi не можуть завершити бiльш ранню операцiю Down, одне з них вибирається системою (випадковим чином) i йому дозволено завершити свою операцiю Down. Таким чином пiсля операцiї Up застосованої до семафора, зв’язаного з декiлькома очiкуюючими процесами значення семафора та к i запишеться рiвним 0, але число очiкуваних процесiв збiльшить на 1. в оригiналi Дейкстра використав замiсть Down i Up позначення P i V.
26. Поняття м’ютекса.
Iнколи використовується спрощена версiя семафора, яку називають м’ютексом. Вiн не здатен рахувати, а лише керує взаємним виключенням доступу до сумiсно використовуваних ресурсiв чи кодiв. Реалiзацiя м’ютекса є досить пристою i евективною, що робить використання м’ютексiв особливо корисним у випадку потокiв, що дiють тiльки в просторi користувача. М’ютекс – це змiнна, яка може знаходитись в 1 з 2 станiв – блокований або неблокований, тому для опису м’ютекса потрiбно всього 1 бiт, хоча частiше використовується цiла змiнна в якої 0 означає неблокований стан, а всii iншi значення вiдповiдають блокованому стану. М’ютекси легко реалiзувати в просторi користувача якщо доступна команда tsl.
27. Поняття монiторiв.
Монiтор – це набiр процедур, змiнних та iнших структур даних, об’єднаний в особливий модуль. Процеси можуть викликати процедури монiтора, але процедури оголошених поза монiтором немає прямого доступу до внутрiшнiх структур даних монiтора. Деталiзацiя взаємних виключень допомагає важлива властивiсть монiтора при зверненнi до монiтора в будь-який момент часу активним може бути лише один процес. Монiтор є структурним компонентом мови програмування, тому компiлятор знає, що обробляти виклики процедур монiтора треба перед тим, як викликати решту процедур. Звичайно при виклику процедури монiтора першi декiлька команд процедурi перевiряють чи немає в монiторi активного процесу, якщо активний процес є, то викликаю чому процесу потрiбно починати, в iншому випадку запит задовольняється. Iснує декiлька мов програмування, якi пiдтримують монiторинг (одна з них Java), синхронiзованi методи на мовi Java вiдрiзняється вiд стандартних монiторiв вiдсутнiстю змiнних станiв.
28. Поняття бар’єрiв.
Бар’єр – це механiзм синхронiзацiї, що використовується частiше для груп процесiв, нiж для ситуацiї з 2-ма процесами. Деякi додатки подiляються на фази i iснує правило, що процес не може перейти в наступну фазу, поки до цього не готовi всi iншi процеси. Цього можна досягти, розмiстивши в кiнцi кожної фази бар’єр. Коли процес доходить до бар’єра, вiн блокується, поки всi процеси не дiйдуть до бар’єра.