- •Еволюція спз.
- •Призначення та склад операційних систем.
- •Системне програмування.
- •Загальна схема трансляції
- •Основні принципи розробки системного програмного забезпечення.
- •Умови зміни станів процесу (з Рис.1.)
- •Властивості та класифікація процесу.
- •Визначення ресурсу та класифікації.
- •2. Дисципліни диспетчеризації.
- •3. Алгоритми в диспетчеризації з витісненням та без.
- •4. Способи забезпечення гарантованого обслуговування процесів.
- •5. Критерії порівняння алгоритмів диспетчеризації.
- •6. Вплив планування на ефективність обчислювальних систем.
- •7. Використання динамічних пріоритетів.
- •2. Види задач синхронізації паралельних процесів.
- •3. Синхронізація за допомогою блокування пам’яті.
- •4. Алгоритм Деккера.
- •5. Команда “перевірка” та “встановлення”.
- •6. Використання семафорів для синхронізації та впорядкування паралельних процесів.
- •7. Монітороподібні засоби синхронізації паралельних процесів.
- •8. Поштові ящики.
- •9. Конвеєри.
- •10. Черги повідомлень.
- •Неперервний розподіл оперативної пам’яті.
- •Розподіл з перекриттям.
- •Статичний розподіл пам’яті.
- •Динамічний розподіл пам’яті.
- •Розділи пам’яті з фіксованими розмірами.
- •Розділи пам’яті зі змінними розмірами.
- •Сегментна схема організації віртуальної пам’яті.
- •Сторінкова схема організації віртуальної пам’яті.
- •Сегментно - сторінкова схема організації віртуальної пам’яті..
- •Тема 7. Архітектурні особливості мікропроцесорів Intel 80x86.
- •Мал. 3.1 Схема визначення фізичної адреси для процесора 8086.
- •2. Нові системні регістри мікропроцесорів і80x86.
- •Мал. 7.2 Основні системні регістри мікропроцесорів і80x86.
- •3. Підтримка сегментного способу організації віртуальної пам'яті.
- •Мал. 7.3 Дескриптор сегменту.
- •Мал. 7.4. Селектор сегменту.
- •Мал. 7.5 Сегмент стану задачі (tss).
- •Мал. 7.6 Процес отримання лінійної адреси команди.
- •4. Підтримка сторінкового способу організації віртуальної пам'яті.
- •Мал. 7.7 Дескриптор сторінки.
- •Мал. 7.8 Трансляція лінійної адреси в мікропроцесорах і80x86.
- •5. Режим віртуальних машин для виконання додатків реального режиму.
- •6. Захист адресного простору задач.
- •Якщо цільовий сегмент є сегментом стека, то правило перевірки має вид
- •7. Механізм шлюзів для передачі керування на сегменти коду з іншими рівнями привілеїв.
- •Мал. 7.9 Механізм шлюзів для переходу на другий рівень привілеїв.
- •Мал. 7.10 Перехід на сегмент більш привілейованого коду.
- •Мал. 7.11 Формат дескриптора шлюзу.
- •Тема 8. Організація системи переривань 32-розрядних мікропроцесорів i80х80.
- •2. Типи переривань.
- •4. Узагальнена процедура обробки переривання.
- •5. Робота системи переривань у захищеному режимі роботи процесора.
- •Обробка переривань у контексті поточної задачі.
- •7. Обробка переривань з переключенням на нову задачу.
- •Тема 9. Керування вводом/виводом даних.
- •2. Режими керування вводом/виводом.
- •3. Закріплення пристроїв, загальні пристрої вводу/виводу.
- •4. Основні системні таблиці вводу/виводу.
- •Синхронний і асинхронний ввід/вивід.
- •6. Кешування операцій вводу/виводу при роботі з накопичувачами на магнітних дисках.
- •Тема 10.Організація файлових систем.
- •Тема 11. Файлові системи fat, vfat, fat32, hpfs.
- •Тема 12.Файлова система ntfs (Mew Technology File System)
- •Можливості файлової системи ntfs по обмеженню доступу до файлів і каталогів.
- •Інтерфейс прикладного програмування арі.
- •Реалізація функцій арі на рівні операційної системи.
- •Реалізація функцій арі на рівні системи програмування.
- •Реалізація функцій арі за допомогою зовнішніх бібліотек.
- •Posix інтерфейс.
- •Віртуальна машина.
- •Типи та інтерфейс користувачів.
- •Команди та командний інтерпретатор.
- •Процеси та їх виконання.
- •Підсистема вводу/виводу.
- •Структура файлової системи.
- •Засоби захисту файлів і даних.
- •Сигнали і семафори.
- •Програмні канали та черги повідомлень.
- •Розділювана пам’ять та виклики віддалених процедур.
2. Дисципліни диспетчеризації.
Розрізняють два великих класи дисциплін диспетчеризації: безпріоритетні і пріоритетні.
При безпріоритетній організації задачі або процеси вибираються згідно з певним, раніше установленим, порядком без врахування важливості цих процесів та необхідного часу обслуговування.
При реалізації пріоритетних дисциплін певним окремим задачам чи процесам надаються виключне право або набір прав для установки такого процесу в чергу.
Рис. 3.1. Структура диспетчеризації.
Розглянемо деякі дисципліни диспетчеризації:
Дисципліна FIFO (first input first output) – є реалізацією безпріоритетної черги. Якщо в черзі звільняється елемент і він не останній, то всі після нього посуваються вперед і в останній вільний елемент черги записується ім’я нового процесу. Першим з черги вибирається елемент, який стоїть на початку черги.
Дисципліна LIFO (last input first output) – першим з черги вибирається елемент, який прийшов останнім.
Дисципліна FCFS (first come first server) – є подібна до FIFO. Ця дисципліна враховує перебування процесів в станах блокування, наприклад при операціях вводу/виводу. Ті, які були заблоковані в процесі роботи після переходу в стан готовності поступають в чергу готовності перед новими задачами, які ще не обслуговувались. При такій дисципліні організовуються дві черги: черга готових до обслуговування процесів і черга нових процесів.
Рис. 3.2. Дисципліна FCFS.
Ця дисципліна не потребує втручання ззовні в хід обчислювального процесу. Не відбувається розподіл процесорного часу. Воно не відноситься до дисциплін без виключення. Переваги – простота реалізації та невеликий розхід системних ресурсів для організації черги задачі. Однак при збільшенні завантаженості ОС, збільшується середній час обслуговування задачі, коли “короткі” завдання (які потребують невеликих затрат машинного часу) повинні очікувати такий самий час, що й довгі завдання.
Дисципліна SJN (short jump next) – згідно з цією дисципліною ОС вимагає, щоб для кожного процесу була відома оцінка по необхідних обчислювальних ресурсах. Для постановки задачі в чергу диспетчер оцінює необхідний час виконання задачі і ставить задачу перед довшою задачею. При цій дисципліні існує одна черга процесів і завдання, що були заблоковані знову поступають в кінець черги як і нові завдання. Це приводить до того, що завдання які потребують мало часу очікують процесу як і довгі процеси.
Дисципліна SRT (short remain time) – розроблена з метою забезпечення більш якісного обслуговування коротких завдань. Виконує спочатку ті процеси, час завершення виконання яких найменший.
Дисципліна RR (round robin) – кожна задача отримує порцію часу (квант часу). Після закінчення цього кванту часу задача знімається з виконання на процесорі і він передається наступній задачі. Задача, яка була знята з черги записується в кінець черги задач, які готові до виконання. Величина кванту часу, як правило, вибирається, як середнє значення між достатнім часом реакції системи на запити користувачів та процесорним часом, який необхідний для перемикання між задачами.