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