
- •Принципи роботи апаратури введення-виведення. Пристрый введення-виведення.
- •Переривання персональної кс.
- •Задачі програмного забезпечення введення-виведення.
- •Способи здійснення операції введення- виведення.-------------
- •Обробники переривань.
- •Драйвери пристроїв.
- •Способи здійснення введення-виведення.
- •Еволюція функцій введення-виведення.
- •Прямий доступ до памяті.
- •Аспекти проектування пристроїв введення-виведення.
- •Логічна структура пристроїв введення-виведення.
- •Буферизація операцій введення-виведення.
- •Багаторівневі таблиці сторінок.--------------
- •Буфери швидкого перетворення адреси.
- •Інвертовані таблиці сторінок.
- •Поняття про алгоритм заміщення сторінок.
- •Оптимальне заміщення сторінок.
- •Алгоритм nru.
- •Алгоритм fifo.
- •Алгоритм «Друга спроба»
- •Алгоритм годинник
- •Алгоритм lru
- •Поняття файлової системи
- •Іменування файлів
- •Структура файлу
- •Типи файлів.
- •Доступ до файлів. Атрибути файлів
- •Файли відображувані на адресний простір памяті
- •Каталоги
- •Структура файлової системи
- •Реалізація файлів. Неперервні файли
- •Звязні списки
- •Звязний список за допомогою таблиці розміщеної в оп.
- •Реалізація файлів: і-вузли. Реалізація каталогів.
- •Поняття планування в системах з одним процесором
- •Типи планування процесора
- •Критерії короткотривалого планування
- •Використання пріоритетів
- •Альтернативні стратегії планування
- •Стратегія планування перший пішов-перший обслужив ся
- •Стратегія кругового планування
- •Віртуальне кругове планування
- •Стратегія вибору найкоротшого процесу
- •Стратегія найменшого часу, що залишився
- •Стратегія найвищого відношення відгуку
- •Зниження пріоритету
- •Порівняння продуктивності стратегій
- •Справедливе планування
- •Класифікація багатопроцесорних систем
- •Основні поняття про зернистості синхронізацій
- •Задачі планування в багатопроцесорній системі
- •Планування процесів
- •Планування потоків
- •Основні підходи до планування потоків
- •Розділення навантаження
- •Бригадне планування
- •Призначення процесорів
- •Динамічне планування
- •Поняття про обчислення реального часу
- •Характеристики ос реального часу
- •Планування реального часу
- •Планування граничними термінами
- •Частотно-монотонне планування
- •Постановка задачі проектування ос
- •Причини ускладнення проектування ос
- •Розробка інтерфейсу ос
- •Особливості проектування ос. Парадигми
- •Реалізація ос
- •Тенденції у проектуванні ос
- •Історичні відомості про ос типу unix
- •Загальна архітектура системи unix
- •Сучасні системи unix
- •Історія виникнення ос linux
- •Модульна структура ос linux
- •Традиційне планування unix
- •Історія виникнення windows
- •Архітектура ос windows 2000
- •Архітектура ос windows xp
Еволюція функцій введення-виведення.
Етапи розвитку функціонування пристроїв введення-виведення:
Процесор безпосередньо керує периферійними пристроєм.
До пристрою додається контролер або модуль введення-виведення. Процесор використовує програмоване введення-виведення без переривань.
Застосовується та ж конфігурація, що в другому етапі, тільки з використанням переривань. В результаті процесору немає необхідності витрачати час на очікування виконання операцій введення-виведення, що призводить до збільшення продуктивності.
Модуль введення-виведення отримує можливість безпосередньої роботи з пам’яттю з використанням DMA. З’являється можливість переміщення блоків даних в пам'ять або без неї без використання процесора (за виключенням моментів початку і кінця передачі даних).
Модуль введення-виведення удосконалює і стає окремим процесором, що має спеціалізовану систему команд, призначених для введення-виведення. Центральний процесор дає завдання процесору введення-виведення виконати програму введення-виведення, яка знаходиться в основній пам'яті. Процесор введення-виведення здійснює вибірку і виконання відповідних команд без участі центрального процесора. Така процедура дозволяє центральному процесору визначити послідовність виконуваних функцій введення-виведення і бути перерваними тільки при виконанні всієї послідовності.
Модуль введення-виведення володіє своєю локальною пам’яттю і є, по суті, окремим комп’ютером. За такої архітектури керування багатьма пристроями введення-виведення може здійснюватись при мінімальному втручанні центрального процесора. Найчастіше така архітектура використовується для керування зв’язком з інтерактивними терміналами. Процесор бере на себе більшість задач з керування терміналами.
Прямий доступ до памяті.
На рис.17.1 зображено логічну схему прямого доступу до пам'яті. Пристрій прямого доступу до пам'яті здатен дублювати функції процесора, зокрема отримувати від процесора керування системою. Ця можливість необхідна йому для передачі даних по системній шині – як в пам'ять, так і з неї. Модуль DMA використовує системну шину лише в тому випадку, коли процесор не потребує її (в іншому випадку він заставляє процесор тимчасово призупинити свою роботу). Цей спосіб найбільш розповсюджений та іменується захопленням циклу, бо модуль DMA виконує захоплення циклу шини.
Рис.17.1. Блок-схема прямого доступу до пам'яті.
Аспекти проектування пристроїв введення-виведення.
При проектуванні керуються двома цілями.
Досягнення високої ефективності та універсальності.
Ефективність важлива, бо операції введення-виведення часто є причиною утворення затримок в комп’ютерній системі. Вони порівняно з основною пам’яттю і процесором дуже повільні. Одним із способів вирішення цієї проблеми є багатозадачний режим, який дозволяє процесору під час виконання операцій введення-виведення одного процесу працювати над виконанням інших. Застосовують також підкачку. Таким чином, при створенні операційної системи основна увага приділяється пошуку ефективної схеми виконання операцій введення-виведення.
Але саме більше що модна зробити – це застосувати модульний підхід при розробці функцій введення-виведення. Такий підхід дозволяє сховати деталі пристрою, так що процеси користувача звертаються до пристрою тільки з багаторівневими викликами: читання і запис, відкриття і закриття, блокування і розблокування.
Універсальність .
Щоб спростити роботу з пристроями введення-виведення та знизити ймовірність виникання помилок бажано мати можливість однакового керування різними пристроями. Це відноситься як до керування пристроями введення-виведення зі сторони процесів користувача, так і зі сторони ОС.
Але саме більше, що моджна зробити – це застосувати модульний перехід при розробці функцій введення-виведення.