
- •Операційні системи
- •Функціонування комп'ютерної системи
- •Обработка переривань
- •Структура пам'яті
- •Лекція 5: Архітектура ос. Управління процессами: Основні поняття. Семафори і монітори План
- •2. Керування процесами
- •Віртуальні машини - інший розповсюджений підхід до розробки операційних систем й їхніх користувальницьких інтерфейсів
- •Механізми й політики
- •Реалізація операційних систем
- •Генерація операційної системи
- •Перемикання з одного процесу на інший
- •Планувальники, що виконують диспетчеризацію процесів
- •Лекція 10. Методи синхронізації процесів План
- •Алгоритм рішення проблеми критичної секції
- •Алгоритм «в пиріжковій» (bakery algorithm)
- •Синхронізація на основі загальних семафорів
- •Реалізація семафорів
- •Рішення за допомогою семафорів завдання
- •Рішення за допомогою семафорів завдання "читачі - письменники"
- •Рішення за допомогою семафорів завдання " філософи, що обідають,"
- •Монітори
- •Лекція № 11. Управління памяттю План
- •Динамічне завантаження й динамічна лінковка
- •Оверлейна структура програми
- •Відкачка й підкачування
- •Лекція 13. Сегментна організація пам’яті. Віртуальна пам’ять
- •Оптимальний алгоритм заміщення сторінок
- •Сторінкова організація на вимогу в Windows nt
- •Лекція № 14. Системи файлів План
- •Типова організація файлової системи зображена на мал. 19.3.
- •Логічна організація директорій
- •Монтування файлових систем
- •Структура файлової системи
- •Лекція № 15. Віртуальні файлові системи План
- •Лекція 17. Системи вводу-виводу План
- •Опитування пристроїв
- •Переривання
- •Ввід-вивід із прямим доступом до пам'яті (dma)
- •Блокові й символьні пристрої
- •Мережні пристрої істотних відрізняються від блоків і символьних; мають свій власний інтерфейс і систему команд
- •Годинники й таймери
- •Блокуємий (синхронний) і не блокуємий (асинхронний) ввід-вивід
- •Структури даних для вводу-виводу в ядрі ос
- •Життєвий цикл запиту на ввід-вивід
- •Продуктивність вводу-виводу
- •Лекція 18. Мережі й мережеві структури. Класичні и сучасні мережеві комунікаційні протоколи План
- •Мережі Ethernet
- •Протокол tcp/ip
- •Функционирование Ethernet-мереж
- •Лекція 19: Безпека операційних систем і мереж. План
- •Лекція 20. Огляд архітектури й можливостей системи Linux: архітектура, ядро, поширення й ліцензування, принципи проектування, керування процесами План
- •Історія Linux
- •Ядро Linux
- •Сучасний стан Linux, дистрибутиви й ліцензування
- •Принципи проектування й компоненти системи Linux
- •Модулі ядра, що завантажують, Linux
- •Керування процесами в Linux
- •Планування завдань ядра й синхронізація в ядрі
- •Лекція 21. Огляд архітектури й можливостей системи Linux: керування пам'яттю, ресурсами, файлові системи, драйвери пристроїв, мережі, безпека План
- •Керування фізичною пам'яттю в Linux
- •Віртуальна пам'ять в Linux
- •Виконання й завантаження користувальницьких програм в Linux
- •Системи файлів Linux
- •Ввод й вивід в Linux
- •Взаємодія процесів в Linux
- •Структура мережі в Linux
- •Безпека в Linux
- •Розвиток і використання Linux
- •Лекція 22. Огляд архітектури й можливостей систем Windows 2000/xp/2003/Vista/2008/7 План
- •Система Windows 2000
- •Історія Windows
- •Принципи проектування Windows 2000 - розширюваність, переносимость, надійність, безпека, сумісність, продуктивність, підтримка інтернаціоналізації й локалізації.
- •Архітектура Windows 2000
- •Ядро Windows 2000
- •Обработка переривань у ядрі
- •Виконавча підсистема (executive) ос Windows 2000
- •Підсистеми оточення в Windows 2000
- •Лекція 23. Системні механізми Windows План
- •Система файлів Windows
- •Рограммный інтерфейс Windows
- •Програмний інтерфейс Windows: Керування процесами
- •Керування віртуальною й фізичною пам'яттю й робочими наборами в Windows
- •Лекція 24. Ос для мобільних пристроїв. Windows Mobile План
- •Особливості ос для мобільних пристроїв
- •Ринок ос для мобільних пристроїв
- •Перспективи ос для мобільних пристроїв
- •Лекція 25. Перспективи операційних систем і мереж План
- •Операційні системи інших великих фірм
- •Solaris - операційна система розробки фірми Oracle / Sun
- •Сучасні тенденції в розвитку ос
- •Нові ос сімейства Windows
- •Нові тенденції в розвитку ос
- •Графічні оболонки ос
- •Підтримка паралельних обчислень
- •Розвиток бездротових мереж
- •Перспективи розвитку ос
Структура пам'яті
Основна ( оперативна ) пам'ять – єдина велика частина пам'яті, до якої процесор має безпосередній доступ. Як відомо, уміст основної пам'яті не зберігається після перезавантаження системи або після вимикання комп'ютера. Зовнішня ( вторинна ) пам'ять – розширення основної пам'яті, що забезпечує функціональність стійкої ( що зберігає) пам'яті великого обсягу.
Як вторинна пам'ять найчастіше використаються жорсткі диски (hard disks). Контролер диска визначає логіку взаємодії між пристроєм і комп'ютером.
Системи пам'яті організовані в ієрархію, виходячи з їхньої швидкодії, вартості й можливості збереження інформації (стійкості). Для оптимізації роботи пам'яті будь-якого виду використається асоціативна пам'ять (кэш – cache), розташована в більше швидкодіючих системах пам'яті й зберігаюча елементи, що найбільш часто використовувані у повільній пам'яті. Із цього погляду, оперативну пам'ять можна розглядати як кэш для зовнішньої пам'яті. Кеш-пам'ять – це, по суті справи, асоціативний список пар (Адреса, Значення), причому апаратний пошук у ній відбувається за адресою як по ключу. Таким чином, перед звертанням до повільної зовнішньої пам'яті спочатку відбувається пошук по заданій адресі в кеш-пам'яті, і тільки якщо він не привів до успіху, виконується стандартне звертання до зовнішньої пам'яті. Принцип кэшування дуже важливий і дозволяє істотно прискорити роботу із зовнішньою пам'яттю. Однак він вимагає реалізації спеціальної політики керування кеш-пам'яттю, тому що кеш вводить додатковий рівень в ієрархії пам'яті й вимагає погодженості даних, збережених одночасно на різних рівнях пам'яті. Апаратури й ОС підтримують кэш команд, кэш даних, кэш жорсткого диска й т.д. – для всіх видів пам'яті.
Ієрархія пристроїв пам'яті (у спрощеному виді) показана на рис. 4.6
Рис. 4.6. Ієрархія пристроїв пам'яті
Більше швидкі види пам'яті на схемі розташовані вище, більше повільні - нижче. Схема особливих коментарів не вимагає. Деякі часто використовувані види зовнішньої пам'яті:
флэш-память (флэшка) – зовнішня пам'ять компактного розміру, модуль якої підключаються через USB-порт. Параметри: обсяг - до 128 гігабайт і більше; швидкість обміну через порт USB 2.0: 240 - 260 мегабіт у секунду;
зовнішній жорсткий диск (ZIV drive й інші) – обсяг до 1 терабайта; працює також через порт USB;
BluRay – диски – новий різновид компакт-дисків великої ємності (однобічні – 25 гігабайт, двосторонні – 50 гігабайт). Для порівняння, стандартна ємність диска DVD становить 4.7 гігабайт.
Для захисту пам'яті необхідно забезпечити захист, принаймні, для вектора переривань і підпрограм обслуговування переривань. Наприклад, неприпустимо дозволити користувальницькій програмі формувати у звичайному режимі довільну адресу й звертатися по ній, тому що при цьому може бути порушена цілісність системних областей пам'яті. Щоб цього уникнути, в апаратурі уводяться два регістри, які відзначають границі припустимої області пам'яті, виділеній користувальницькій програмі. Це базовий регістр (base register), що містить початкову адресу області пам'яті, виділеній користувальницькій програмі, і регістр границі (limit register), що містить розмір користувальницької області пам'яті. Пам'ять поза відзначеним діапазоном уважається захищеною, тобто звертання до неї з користувальницької програми не допускаються (при спробі такого обігу виникає переривання).
Використання базового регістра й регістра границі ілюструється на рис. 4.8.
Рис. 4.8. Використання регістра бази й регістра границі для захисту пам'яті
На схемі завданню 2 виділена область пам'яті, починаючи з адреси 300040 ( що зберігається в регістрі бази), довжиною 120900 ( що зберігається в регістрі границі), тобто по адресу 420939 включно. Обіг, наприклад, за адресою 420940 із програми завдання 2 приводить до переривання як неприпустиме - спрацьовує захист пам'яті.
Організація апаратного захисту пам'яті й процесора
Переривання по таймеру
При виконанні в привілейованому режимі ОС має необмежений доступ як до пам'яті монітора, так і до пам'яті користувача. Команди запису значень у регістри base й limit є привілейованими.
У системах з теговою архітектурою тільки привілейована команда може сформувати новий дескриптор на область пам'яті, або змінити поле в дескрипторі (наприклад, адреса початку або довжину).
Для організації періодичних переривань у системі є таймер – системний регістр, що містить деяке встановлене спеціальною командою значення часу, що зменшується через кожен квант (такт) процесорного часу. Коли значення таймера стає рівним нулю, відбувається переривання. Переривання по таймері використається для організації періодичного опитування пристроїв, для реалізації режиму поділу часу (для відкачки неактивних завдань після закінчення деякого тимчасового інтервалу) і для обчислення поточного часу.
Команда запису значення в таймер є привілейованою.