You are on page 1of 4

Питання до 5-2 лекції

ПІБ група КНД-22

Вписати від повідь на питання


Питання
1. Як перекладається Lock? Замок або блокування.
2. Що таке блокування (Lock) В прямому сенсі замок, ми вирішуємо як ним
або взаємне блокування в користуватись, задавати деякі правила.
операційної системі?
3. Наведіть приклад взаємного Черга до вбиральні, одна людина зайшла, інша
блокування чекає в черзі.
4. Які види блокування існують Блокування виду «зайнятий», блокування виду
в операційних системах? «вільний».
5. Що таке блокування виду Потрібно дочекатись коли замок зміниться на
зайнятий? вільний і отримати можливість увійти.
6. Що таке блокування виду Можна увійти і змінити стан замка на зайнятий.
вільний?
7. Які операції виконуються під Зайняти і звільнити.
час блокування в
операційних системах?
8. Що таке операція блокування Увійти в критичну секцію і перевести замок у
виду зайняти (перевести в стан – зайнятий.
стан "зайнято" або чекати
звільнення)?
9. Що таке операція блокування Вийти з критичної секції і перевести замок у стан
виду звільнити (перевести в – вільний.
стан "вільно")?
10. Які етапи здійснюються під Зайняти – виконати критичну секцію – звільнити.
час блокування?
11. Що таке Критична секція? Це частина програми, в якій здійснюється доступ
до даних, що розділяються.
12. Що таке зайняти критичну Це означає увійти в критичну секцію і
секцію? заблокувати замок.
13. Для чого використовується Блокування захищає дані, процеси(потоки)
блокування? можуть займати різні блокування, потрібно
використовувати одне блокування для всіх
критичних секцій, які використовують одні й ті ж
ресурси.
14. Чому блокування захищає Коли ми пишемо дані, ми не повинні приводити
дані ? ці дані в стан який не має сенсу. Тому один
процес повинен писати один адрес даних.
15. Можуть чи ні процеси або Процеси або потоки можуть одночасно займати
потоки одночасно займати різні блокування.
різні блокіровки?
16. Чому блокування захищає Програма може використовувати кілька
можливість процесів блокуваннь і в різних комбінаціях звільняти і
(потоків) займати різні займати ресурси.
блокування?
17. Як блокування захищає всі Якщо ви звертаєтесь до файлу, потрібно
критичні секції від використовувати до одного й того ж блокування
використання одних і тих же в різних процесах, які звертаються до того ж
ресурсів однім блокуванням? файлу.
18. Можна змінювати чи ні Ні, не можна змінювати баланс (втручатися в
баланс (втручатися в процес, процес, що займає критичну секцію) під час
що займає критичну секцію) зміни в критичній секції.
під час зміни в критичній
секції?
19. Що робіть замок відносно Процес може увійти до критичної секції тільки
процесів в критичній секції? тоді, коли замок відкритий, одночасно
закриваючи замок. При виході процесу з
критичної секції замок відкривається.
20. Можна чи ні зайняти замок, Ні, не можна зайняти замок, що зайнятий.
що зайнятий?
21. Що нам потрібно в критичній Взаємне виключення, прогрес, кінцеве
секції? очікування, продуктивність, справедливість.

22. Що таке Взаємне Взаємне виключення забезпечує, щоб критичні


виключення в критичній секції операторів не виконувалися одночасно.
секції?
23. Що таке Прогрес в критичній Процес поза критичної секції не повинен
секції? забороняти іншому процесу ввійти в критичну
секцію.
24. Що таке Кінцеве очікування Коли ми чекаємо замок нам потрібно знати, що
в критичній секції? ми його дочекаємось.
25. Що таке Продуктивність в Нам важливо зробити так щоб усі настройки,
критичній секції? замки, нові інструменти створювали незначну
нагрузку, щоб була оптимальна продуктивність.
26. Що таке Справедливість в Нам потрібно, щоб різні процеси, які мають одну
критичній секції? й ту ж критичну секцію мали можливість туди
увійти. Щоб не було дискримінації процесів.
27. Що буде, якщо два процеси Обидва процеси займуть замок, але вони не
одночасно отримають можуть одночасно до нього звернутись, виникає
інформацію про вільність конфлікт.
одного і того ж замку?
28. Якім чином вирішується За допомогою операції Test-and-set.
конфлікт зайнятості замка в
операційної системі?
29. Що таке TEST-AND-SET? Атомарна операція яка вбудована в більшість
сучасних комп’ютерів, яка допомагає уникнути
конфліктів одночасного займання замка різними
процесами.
30. Що таке флаг в TEST-AND- Деяка змінна, яка вказує вільність чи зайнятість
SET? замка.
31. Що таке семафор? Цілочисельний лічильник, який обмежує
кількість процесів, які можуть увійти в визначену
ділянку коду.
32. Для чого потрібний семафор? Семафор виконує ті ж функції, що і замок, але в
семафорі може перебувати кілька процесів.
33. Які стани має семафор? Ініціалізація, збільшення і зменшення
лічильника.
34. Що таке ініціалізація Створення лічильнику з деяким числом.
семафору?
35. Що таке збільшення (signal) Збільшення значення лічильника на одиницю.
семафору?
36. Що таке зменшення (wait) Зменшення значення лічильника на одиницю.
семафору?
37. Що таке блокування Якщо при зменшенні семафору лічильник
семафору? дорівнює нулю, то процес блокується
38. Опишіть зміст роботи Якщо якийсь процес входить в семафор, значення
семафору на лічильнику зменшується на одиницю, коли
значення на лічильнику досягає нуля, семафор
блокується, а процесам в черзі потрібно чекати,
щоб увійти в їх критичну секцію, коли процес в
семафорі закінчив роботу і виходить з нього
значення на лічильнику збільшується на
одиницю, а процес в черзі може увійти в
семафор.
39. Коли семафорне не Коли процес очікує події не пов’язаної з
потрібний? блокуванням
40. Недолік семафорів? Процес може очікувати якоїсь події, яка зовсім не
пов’язана з блокуванням, семафори ускладнюють
програмування, іноді доводиться
використовувати декілька семафорів в одній
задачі.
41. Може чи ні бути кілька Може бути кілька семафорів в одному завданні.
семафорів в одному
завданні?
42. Що таке монітор в Така собі версія семафору для споживачів
операційної системі?
43. Як працює монітор Існують деякі дані, і деякі операції над цими
операційної системі? даними, усе це пов’язано, тому нам не потрібно
думати які семафори використовувати для яких
даних. Ми одразу описуємо, що з цими даними
працюють наступні операції і ці операції повинні
забезпечувати взаємо виключення – не можна
щоб ці операції одночасно працювали з цими
даними.
44. Переваги монітору з Операції можуть чекати не тільки того, що
операційної системі? монітор звільнить, але й ми можемо задати якусь
іншу умову.
В підсумку ми маємо зручне взаємо виключення,
більш зручне програмування.
45. Що таке Starvation? Ресурсне голодування.
46. Що таке Deadlock? Взаємоблокування.
47. Що таке Livelock? Динамічний тупик.
48. Що таке Взаємне блокування Ситуація, коли кожен із групи процесів очікує на
(deadlock) (або зависання)? подію, яку може викликати лише інший процес з
цієї групи.
49. Що таке динамічний тупик Ситуація, в якій два або більше процесів
(Livelock)? неперервно змінюють свої стани у відповідь на
зміну в других процесах без якої-небудь корисної
роботи.
50. Що таке «взаємне М'ютекс є одним із засобів синхронізації
виключення», М'ютекс (англ. роботи потоків або процесів, призначений для
Mutex, від mutual exclusion)? захисту певного об’єкта у потоці від доступу
інших потоків.
51. Що таке Стан гонки (race Ситуація, в якій, під час виконання програми, в
condition)? якій робота системи чи результат операції
залежить від того, в якій послідовності, або ж з
якою тривалістю виконуються окремі інструкції
коду.
52. Що таке ресурсне Ситуація коли паралельний процес не може
голодування (Resource отримати усі ресурси, необхідні для виконання
Starvation) або (starvation)? його роботи.
53. Умови виникнення Взаємне виключення, hold and wait, система не
Взаємного блокування може відбирати ресурси у процеса, циклічне
(deadlock)? очікування.

54. Що робити з deadlock? Вирішення проблеми, превентивна робота,


заборона hold and wait, заборона циклічного
блокування.
55. В чому зміст Вирішення Виявити deadlock, спробувати «вбивати»
проблем щодо deadlock? процеси.
56. В чому зміст Превентивної Зробити так, щоб deadlock не міг утворитися.
роботи щодо deadlock?
57. В чому зміст Заборонити Заборонити процесам очікувати якісь ресурси,
hold-and-wait (або якщо вони заблокували якийсь ресурс.
переглянути
блокування) щодо deadlock?
58. В чому зміст Заборона Слідкувати за блокуваннями при можливих
циклічно блокування (рівні, циклічних блокуваннях, відмовляти в доступі до
доступу до блокірсасам) ресурсів.
щодо deadlock?

You might also like