Симулятор алгоритму ОС - це навчальний додаток, що дозволяє імітувати алгоритми, що змушують операційну систему (ОС) працювати.
Як ви можете знати, основною метою ОС є управління 4 ресурсами:
- Процесор.
- Пам'ять.
- Система вводу / виводу (вводу / виводу).
- Файлова система.
Кожна ОС містить кілька алгоритмів, що забезпечують зазначені вище функціональні можливості. Наприклад:
- Алгоритм планування CPU вибирає, який процес повинен приймати CPU в кожну мить.
- Інший алгоритм відповідає за те, щоб не допустити тупикової ситуації, коли процеси розподіляють ресурси.
- Алгоритм управління пам’яттю ділить пам’ять на порції для кожного процесу, а інший вирішує, які частини слід поміняти місцями, а які - залишитися в оперативній пам’яті. Розподіл може бути суміжним чи ні. В останньому випадку ми матимемо більш сучасні механізми, такі як пейджинг або сегментація. Потім алгоритм заміни сторінки вирішить, які сторінки можуть залишатися в пам'яті, а які - ні.
- Інший алгоритм відповідає за звернення уваги на всі перебої, які апаратне забезпечення може спричинити до системи вводу-виводу.
- І так далі.
Для глибокого розуміння ОС слід знати, як працюють ці алгоритми, і чому деякі підходи, які здаються обґрунтованими, відкидаються відомими операційними системами, такими як Windows або Linux. Мета цього додатка - дати пояснення щодо різних підходів до кожної проблеми та проілюструвати, як працює кожен алгоритм за допомогою моделювання. З цією метою ця програма містить кілька прикладів, але вона також дозволяє надавати власні набори даних і перевіряти, як кожен алгоритм буде виконувати їх. Важливо також сказати, що в більшості випадків цей додаток містить не найсучасніші алгоритми, а спрощення, які ми вважаємо кращими для навчального процесу.
Особливості:
- Кілька алгоритмів планування попереджувальних та непередбачувальних процесів:
* Перший прийшов - перший отримав
* Найкоротша робота спочатку
* Найперший час, що залишився
* Засноване на пріоритеті (без попередження)
* На основі пріоритетів (переважно)
* Кругової
- Алгоритми тупикової ситуації:
* Уникнення глухого кута (алгоритм банкіра).
- Суцільне виділення пам'яті * Перша придатність
* Найкраще підходить
* Найгірша відповідність
- Алгоритми заміни сторінки:
* Оптимальна заміна сторінки
* Перший-у-першому-вихід
* Найменш нещодавно використані
* Перший у першому-вихід з другим шансом
* Не часто використовується
* Старіння
- Для кожного алгоритму:
* Це дозволяє створювати власні набори даних для моделювання.
* Він включає тестовий режим для перевірки вашого розуміння.