Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Організація програмного забезпечення уведення-виведення




Основна ідея організації програмного забезпечення уведення-виведення полягає у виділенні кількох рівнів, причому нижні рівні забезпечують маскування особливостей апаратури від верхніх, а ті, у свою чергу, забезпечують інтерфейс для використання програмним забезпеченням. Робота програми не повинна залежати від того, чи дані отримуються з гнучкого чи жорсткого диску.

Іншим важливим питанням при організації уведення-виведення є опрацювання помилок. Опрацювання помилок необхідно проводити якнайближче до обладнання: якщо контролер виявляє помилку читання, то він повинен спробувати її відкоригувати і у випадку невдачі виправленням помилок повинен зайнятися драйвер пристрою. І тільки якщо нижній рівень не може виправити помилку, він повідомляє верхній рівень про помилку. Багато помилок можуть усуватися при повторних спробах виконання операцій уведення-виведення, наприклад, помилки, викликані фізичними пошкодженнями робочих поверхонь магнітних чи оптичних дисків тощо.

Ще одне ключове питання - це використання блокуючих (синхронних) і неблокуючих (асинхронних) способів обміну.

Більшість операцій фізичного уведення-виведення виконується асинхронно — процесор починає передавання даних і перемикається на іншу задачу, поки не настане переривання завершення операції.

Програми користувача набагато легше писати, якщо операції уведення-виведення блокуючі - після команди READ програма автоматично припиняється доти, поки дані не потраплять у буфер програми. ОС виконує операції уведення-виведення асинхронно, але представляє їх для програм користувача у синхронній формі.

Остання проблема полягає в тому, що одні пристрої можуть спільно використовуватися у режимі розподілу часу, а інші – виділяються на час виконання певного завдання. Диски - це спільно використовувані пристрої, тому що одночасний доступ кількох користувачів до диска не являє собою проблему. Принтери - це виділені пристрої, не можна змішувати рядки, що друкуються різними користувачами.

Наявність виділених пристроїв створює для операційної системи деякі проблеми, що вирішуються розподілом програмного забезпечення уведення-виведення на чотири рівні :

1) опрацювання переривань

2) драйвери пристроїв

3) незалежний від пристроїв рівень операційної системи

4) рівень користувача.


Поможем в написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой





Дата добавления: 2015-09-07; просмотров: 252. Нарушение авторских прав; Мы поможем в написании вашей работы!

Studopedia.info - Студопедия - 2014-2022 год . (0.015 сек.) русская версия | украинская версия
Поможем в написании
> Курсовые, контрольные, дипломные и другие работы со скидкой до 25%
3 569 лучших специалисов, готовы оказать помощь 24/7