
- •Тема 1: Основні поняття обчислювальних систем Призначення та склад системного програмного забезпечення
- •Основні концепції операційних систем
- •Типи операційних систем
- •Основні етапи розвитку операційних систем
- •Функціональні компоненти операційних систем
- •Керування процесами й потоками
- •Керування ресурсами
- •Керування введенням-виведенням
- •Керування файлами та файлові системи
- •Мережна підтримка
- •Тема 2: Архітектура операційних систем Основні принципи побудови операційних систем
- •Принцип модульності
- •Принцип функціональної вибірковості
- •Принцип здатності до генерування
- •Принцип функціональної надмірності
- •Принцип віртуальності
- •Принцип незалежності програм від зовнішніх пристроїв
- •Принцип сумісності
- •Принцип відкритої і нарощуваної ос
- •Принцип мобільності (переносимості)
- •Принцип забезпечення безпеки обчислень
- •Базові поняття архітектури операційних систем
- •Ядро операційної системи
- •Монолітні системи
- •Багаторівневі системи
- •Системи з мікроядром
- •Концепція віртуальних машин
- •Засоби апаратної підтримки операційних систем
- •Інтерфейс прикладного програмування
- •Варіанти реалізації api
- •Особливості архітектури unix і Linux
- •Особливості побудови ос Linux
- •Особливості архітектури Windows xp
- •Компоненти режиму ядра
- •Компоненти режиму користувача
- •Об’єктна архітектура Windows xp
- •Тема 3: Процеси та потоки
- •Базові поняття процесів та потоків
- •Блок керування процесом
- •Операції над процесами
- •Обробка переривань
- •Алгоритми планування процесів
- •Витісняючі та невитісняючі алгоритми планування
- •Нитки, потоки (Thread)
- •Керування процесорами
- •Планування з переключення та без переключення
- •Лекція 4: Ядро операційної системи
- •Основні функції ядра
- •Асинхронні паралельні процеси
- •Взаємо-виключення
- •Семафори
- •Кільцевий буфер
- •Конвеєр (програмний канал)
- •Черги повідомлень (Queue)
- •Лекція 5. Керування ресурсами
- •Керування пам’яттю
- •Ієрархія пам’яті
- •Розподіл пам’яті
- •Зв’язний розподіл пам’яті для одного користувача
- •Мультипрограмування з фіксованими розділами
- •Мультипрограмування із змінними розділами
- •Боротьба з фрагментацією
- •Стратегії розміщення інформації в пам’яті
- •Системи з розподілом часу. Сторінкова організація пам’яті. Концепція віртуальної (уявної) пам’яті.
- •Принцип кешування даних
- •Лекція 6. Керування даними Файлова система
- •Функції файлової системи
- •Ієрархія даних
- •Об’єднання в блоки та буферизація
- •Організація файлів
- •Методи доступу
- •Характеристики файлів
- •Файлова система
- •Виділення та звільнення місця в пам’яті
- •Зв’язаний розподіл пам’яті
- •Незв’язаний розподіл пам’яті
- •1) Розподіл за допомогою списків секторів
- •2) Поблочний розподіл
- •Дескриптор файлу (file descriptor)
- •Матриця керування доступом
- •Керування доступом в залежності від класів користувачів
- •Копіювання та відновлення інформації
- •Планування роботи з дисковою пам’яттю
- •Призначення планування
- •Цільові характеристики принципів планування
- •Оптимізація пошуку циліндру
- •Оптимізація за часом очікування записів
- •Архітектура сучасних файлових систем
- •Лекція 8. Основи організації ms-dos
- •Будова та функції основних складових дос
- •Керування пам’яттю
- •Відображена пам’ять
- •Розширена пам’ять
- •Висока пам’ять
- •Верхня пам’ять
- •Драйвери верхньої та розширеної пам’яті
- •Завантажувані модулі com та exe – файли
- •Логічна структура диску в ms-dos
- •Формат елементів таблиці розділів
- •Запис завантаження (boot)
- •Використання boot-сектору
- •Визначення формату fat
- •Формат fat
- •Файли та каталоги
- •Недоліки ms-dos
- •Переваги які надає користувачам Windows
- •Windows як операційна оболонка
- •Обмін даними в Windows
- •Зв’язування чи вбудовування
- •Первинність повідомлень: механізм повідомлень
- •Незалежна (preemptive) багатозадачність
- •Взаємодія 32– та 16–розрядних кодів
- •Робота з 16–розрядними продуктами
- •Робота з dos–продуктами
- •Робота 32–розрядних Windows–продуктів
- •Вдосконалення розподілу системних ресурсів
- •Vcache – 32–розрядний дисковий кеш
- •Варіанти модифікацій ос Windows xp
- •Нові характеристики реалізовані в Windows xp
- •Продуктивність
- •Лекція 8. Ос unix
- •Ядро ос unix
- •Генерування ос
- •Процеси
- •Початкове завантаження. Процеси 0 та 1
- •Файлова система unix
- •Будова файлової системи unix
- •Каталоги
- •Тема 1: Основні поняття обчислювальних систем 1
- •Тема 2: Архітектура операційних систем 9
- •Тема 3: Процеси та потоки 25
Відображена пам’ять
Концепція розширеної пам’яті (Expanded memory) належить фірмам Lotus, Intel, Microsoft (LIM).
LIM-EMS – Специфікація відображеної пам’яті (Expanded memory Specification).
Використовується як правило для збереження даних.
ЕМS 3.2 – до 8Мбайт.
ЕМS 4.0 –до 32Мбайт. Допускає сторінки нестандартного розміру (більші або менші 16 Кбайтів, але такі, щоб в одній нестандартній сторінці вміщувалось ціле число стандартних, або щоб в одній стандартній було ціле число нестандартних).
У ХТ, АТ використовується спеціальна плата пам’яті, що відповідає вимогам EMS і програмний драйвер, який керує відображеною пам’яттю. Драйвер відображеної пам’яті – ЕММ (Expanded Memory Manager).
На комп’ютерах з мікропроцесором 386 відображена пам’ять емулюється за допомогою драйверу ЕММ386.ЕХЕ (набір функцій, що доступні через переривання 21h).
Як і стандартна, розширена пам’ять також виділяється блоками. Блок виділяється за запитом від програми, яка вказує число потрібних сторінок. Програма, яка видала запит, отримує в своє розпорядження обробник (handle) або маніпулятор виділеного блоку. Цей обробник використовується у всіх операціях читання з блоку та запису в нього.
Обробник – невелика інформаційна структура, яка зберігає всі необхідні дані про блок.
Таким чином, обмін даними між стандартною та відображеною пам’яттю на логічному рівні реалізується аналогічно обміну між стандартною та зовнішньою пам’яттю.
Перший блок відображеної пам’яті завжди використовується самим ЕММ для себе.
Розширена пам’ять
Microsoft, Lotus, Intel та AST – розробили специфікацію розширеної пам’яті – XMS – eXtended Memory Specification.
Ця специфікація визначила правила доступу як до самої розширеної пам’яті, так і до додаткової пам’яті інших типів, які створюються за її рахунок.
Програмний драйвер, який реалізує специфікацію XMS, дозволяє пересилати дані із стандартної пам’яті у розширену і назад.
Цей драйвер – адміністратор розширеної пам’яті – ХММ, один з найбільш відомих HIMEM.SYS.
Виділення розширеної пам’яті виконується блоками ЕМВ – Extended Memory Block, - та за спеціальним запитом від програм. Програма, яка зробила запит на блок розширеної пам’яті, отримує в своє розпорядження обробник і користується ним при доступі до блоку пам’яті.
Розширена пам’ять – це така, керування якою узгоджене з XMS – XMS-пам’ять, оскільки сама розширена пам’ять може використовуватись і за іншими правилами (! Базова розширена пам’ять це не XMS).
Звертання через переривання 15h замість специфікації XMS.
Висока пам’ять
У процесорі 80286 ША – 24 розрядів. Тоді стає можливою адресація сегменту пам’яті – 64 Кбайт, який починається з останнього значення параграфу UMA. Таким чином адресується до 64Кбайт розширеної пам’яті мінус16 байтів, що входять в останній параграф UMA.
Від 1 Мбайту до 1 Мбуйту + 64 Кбатів – 16 байтів. Область високої пам’яті НМА – (High Memory Area).
Метод доступу до цього сегменту реалізований в драйвері HIMEM.SYS (враховано в XMS).
Розширену пам’ять, що попадає в цю область, називають високою пам’яттю (High Memory). Використовується безпосередньо, без переключення режимів роботи мікропроцесору. Але XMS дозволяє її використовувати тільки одній програмі. Частіше це DOS, частина її резидентного коду, звільняє тим самим стандартну пам’ять.