Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Обробка даних багаторівневими драйверами
Підхід із використанням пакетів IRP найзручніший для роботи із багаторівневими драйверами. Особливості обробки в цьому разі опишемо на прикладі виконання запиту до файлової системи, драйвер якої розташований поверх драйвера диска. Після створення пакета IRP менеджер введення-виведення передає його драйверу верхнього рівня (у нашому випадку - файлової системи). Подальші дії залежать від запиту і реалізації його обробки в цьому драйвері - він може відіслати драйверу нижнього рівня той самий пакет, а може згенерувати і відіслати набір нових пакетів. Ці два підходи розглянемо докладніше. Повторне використання пакета IRP найчастіше застосовують, коли один запит до драйвера верхнього рівня однозначно транслюється в один запит до драйвера нижнього рівня (наприклад, запит до файлової системи - у запит до драйвера диска на читання одного сектора). Структура пакета IRP розрахована на те, що він буде використаний різними драйверами, розташованими один під одним. Фактично відбувається обробка за принципом стека (пакет із верхнього рівня передають на нижній, обробляють, а потім знову повертають на верхній рівень, як у разі вкладених викликів функцій), тому дані для різних драйверів усередині пакета IRP організовані у вигляді стека. Окремі позиції в цьому стеку можуть бути заповнені відповідними драйверами на шляху пакета від одного драйвера до іншого. Зазначимо, однак, що розмір пакета під час його переміщень не змінюють - пам'ять для нього відразу виділяють з урахуванням кількості драйверів, через які він має пройти. З іншого боку, драйвер верхнього рівня може розбити пакет IRP на кілька пов'язаних пакетів, які задають паралельну обробку одного запиту введення-виведення. Наприклад, коли дані для читання розкидані по диску, файлова система може створити набір пакетів, кожен із яких відповідатиме за читання окремого сектора або групи секторів. Усі ці пакети доставляють драйверу пристрою (диска), що обробляє їх по одному, при цьому файлова система відслідковує процес. Після того як усі дії відповідно до пакетів набору виконані, підсистема введення-виведення відновлює первісний пакет і повертає керування процесу або драйверу верхнього рівня.
Розділ 8. Взаємодія з користувачем в операційних системах. (аудиторних6/2г., самостійних- 8/6г.)
Лекція №1.
Тема: Термінальне введення-виведення.
План: 1. Організація термінального введення-виведення: поняття термінала, емуляція термінала, віддалені термінали і консоль, термінальне введення, термінальне виведення,(Л1 ст.439-442). 2. Термінальне введення-виведення в UNIX та Linux: файли термінальних пристроив та консоль, псевдотермінали, керуючий термінал процесу (Л1 ст.442-443). 3. Термінальне введення виведення у Win-32 API (Л1 ст.444-445).
1. Поняття термінала Історично термінали (terminals) використовували для організації багатокористувацької роботи із мейнфреймами або мінікомп'ютерами. Це були апаратні пристрої, що складалися із клавіатури і дисплея, які підключали до комп'ютера через інтерфейс послідовного порту. Особливе поширення такі термінали здобули у 70-80-ті роки: усі розроблені в той час операційні системи включали засоби їхньої підтримки, було створено багато прикладного програмного забезпечення, розрахованого на роботу із ними. Такі термінали працюють у текстовому режимі, за якого обмін даними і їхнє відображення на програмному рівні відбуваються посимвольно. Для відображення використовують екран розміром у символах (звичайно 25 на 80), причому відображатися можуть тільки стандартні символи із кодами ASCII. За подання на екрані розширеного набору символів із кодами 127-255, зокрема символів кирилиці, відповідає символьна таблиця, яка використовується терміналом. Є спеціальні символи (керуючі коди) і послідовності символів, які не відображаються, а керують виведенням на екран термінала. До керуючих кодів належать такі символи, як повернення каретки, переведення рядка, Backspace тощо. Керуючі послідовності називають також ESС-послідовностями (вони починаються із символу із ASCII-кодом 27-ESC). Передаючи такі послідовності термінала, можна переміщати курсор у довільну позицію екрана, керувати яскравістю відображення символів, для деяких моделей терміналів - кольорами тощо. Емуляція термінала У сучасних умовах апаратні термінали застосовують рідко. Проте інтерфейс зв'язку з терміналами (термінальне введення-виведення) не втратив свого значення й досі. Це пояснюється тим, що текстовий режим роботи дуже зручний для розв'язання багатьох задач (організації адміністрування системи, віддаленого доступу до неї тощо), а також широким вибором програмного забезпечення, яке використовує цей режим.
Для спрощення організації термінального введення-виведення у сучасних ОС широко використовують емуляцію термінала. Програмне забезпечення (емулятор) приймає дані згідно із домовленостями щодо обміну із відповідним терміналом і відображає на дисплеї комп'ютера інформацію згідно керуючих послідовностей, визначених для термінала (для цього може бути виділене окреме вікно на графічному екрані). У результаті програмне забезпечення, розраховане на роботу із терміналом, можна використовувати із таким емулятором без змін. Одночасно у системі може бути запущено кілька емуляторів термінала (наприклад, кожен у своєму вікні), і користувач має змогу перемикатися між ними, почергово виконуючи введення-виведення. Найпоширеніша емуляція термінала vt-100, програмне забезпечення, розраховане на використання цього термінала, із великою ймовірністю працюватиме із будь-яким емулятором. Надалі говоритимемо про введення із термінала і виведення на термінал, не уточнюючи, що обмін даними майже завжди відбуватиметься не з апаратним терміналом, а з його емулятором.
|
||||||
Последнее изменение этой страницы: 2017-02-05; просмотров: 188; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.222.148.124 (0.007 с.) |