
- •Теми на самостійне вивчення
- •Урок №2
- •Урок №5
- •Урок №6
- •Урок №7
- •Урок №8
- •Урок №10
- •Урок №11
- •Урок №13
- •Урок №18
- •Урок №19
- •Урок №20
- •Урок №21
- •Урок №22
- •Урок №23
- •Урок №24
- •Урок №25
- •Урок №29
- •Урок №30
- •Урок №31
- •Урок №34
- •Урок №35
- •Урок №36
- •Урок №39
- •Урок №42
- •Урок №43
- •Операційна система та її оточення.
- •Яка роль переривань в роботі операційної системи?
- •Урок №47
Урок №5
(згідно навчальної робочої програми)
Тема: «Робота з багатьма користувачами, керування пам’яттю»
Питання:
Режим із багатьма користувачами
Розподіл часу
Керування пам'яттю
Системи реального часу
Режим із багатьма користувачами
Нині всі звикли до режиму застосування комп'ютера, коли користувач задає інформацію за допомогою клавіатури (інтерактивний режим). У цьому випадку основний час витрачається на введення цієї інформації, центральний процесор у цей час простоює. Так, перші телетайпи, що використовувалися для введення даних, забезпечували швидкість уведення 11 символів за секунду. Застосування сучасних клавіатур істотно не збільшило швидкість, тому що вона обмежена можливостями людини. Контролер клавіатури дозволяє передавати процесору не кожен символ, а повністю введений рядок, що робить можливим за необхідності виправляти задані символи до їх передавання для обробки. Використання потужних процесорів для обчислень в інтерактивному режимі неефективне. Для збільшення продуктивності обчислювальної системи один процесор використовується для роботи з кількома користувачами. Кожному користувачеві система виділяє відрізок (квант) часу. Якщо користувачів не дуже багато, і використовується потужна обчислювальна система, то в кожного користувача виникає ілюзія монопольної роботи з цією системою. Тут постають додаткові проблеми, пов'язані з обслуговуванням користувачів: авторизація користувача, пріоритетне або безпріоритетне обслуговування, розподіл загальних пристроїв, наприклад, принтерів, між користувачами і т.д. І хоча з появою потужних персональних комп'ютерів проблема режиму з багатьма користувачами стала менш актуальною, все ж ця задача й досі стоїть на порядку денному; крім того, аналогічні задачі доводиться розв'язувати при використанні мереж. Отже, актуальною залишається задача захисту від взаємного впливу всіх взаємодіючих і конкуруючих модулів.
Використання процесора з квантуванням часу називається режимом розподілу часу. Для сучасних ОС режим квантування застосовується під час роботи додатків (процесів) і їхніх окремих функцій (потоків).
Таким чином, наступна функція операційної системи — керування процесами і потоками в режимі квантування часу. Ця функція виконується модулем керування процесами (Processmanager).
Керування пам'яттю
Для безпечного використання мультипрограмного режиму і режиму з багатьма користувачами необхідно координувати розподіл нам'яті між окремими додатками і модулями ОС. Цю координацію виконує модуль керування пам'яттю. Цей модуль керує також розподілом пам'яті для потреб самої ОС. У зв'язку з тим, що В якийсь момент часу оперативної пам'яті для виконуваних програм, може не вистачити, інші програми можуть бути витиснені на жорсткий диск. Після їх повторного завантаження адреси даних і функцій можуть змінитися. Операційна система забезпечувати правильний доступ до даних після їхнього повторного завантаження і правильний виклик функцій.
Таким чином, код у програмі повинен бути позиційно незалежним, в іншому разі модулі ОС повинні коректувати його у випадку зміни адреси завантаження. Сучасні процесори забезпечують позиційну незалежність коду на апаратному рівні. Наприклад, для процесорів типу Intelу команді переходу задається відстань між адресою команди, що йде слідом за командою переходу, і міткою, куди треба перейти. У цьому випадку переміщення програми не спричиняє необхідність зміни команд переходу. Модуль керування пам'яттю повинен також забезпечити ефективний і простий метод виділення — звільнення пам'яті додаткам, доступ до всього наявного адресного простору, захист у залежності від прав доступу до пам'яті. Модуль керування пам'яттю (Memorymanager) є одним із найскладніших модулів ОС. Від ефективності алгоритмів керування пам'яттю істотно залежить ефективність ОС у цілому.
Системи реального часу
Такі системи застосовуються для керування різними технічними об'єктами, такими, наприклад, як верстат із числовим програмним керуванням. Характерною особливістю таких систем Є обмеження на гранично допустимий час, протягом якого повинна бути виконана та або інша програма, що керує об'єктом, — и іншому випадку можлива аварія. Таким чином, критерієм ефективності для систем реального часу є їхня здатність витримувати заздалегідь задані інтервали часу між запуском програми ii одержанням результату (керуючого впливу). Цей час називається часом реакції системи, а відповідна властивість системи —реактивністю.
Контрольні питання:
Яким чином відбувається робота декількох користувачів?
В чому суть розподілу часу?
Яким чином відбувається керування пам’яттю?
В чому суть систем реального часу?
Література: Бондаренко М.Ф. Операційні системи : навч. посібник / М.Ф. Бондаренко, О.Г. Качко. – Х.: Компанія СМІТ, 2008. – 432 с., стор. 14-16.