Все о моделировании в Компас-3D LT
   Главная Статьи Файлы Форум Ссылки Категории новостей
July 02 2025 01:18:29   
Навигация
Главная
Статьи
Файлы
FAQ
Форум
Ссылки
Категории новостей
Обратная связь
Фото галерея
Поиск
Разное
Карта Сайта
Популярные статьи
Что необходимо ... 65535
4.12.1 Професси... 35720
Учимся удалять!... 32605
Примеры, синони... 23900
Просмотр готовы... 23168
Декартовы коорд... 23055
FAST (методика ... 21915
содержание - се... 21251
Просмотр готовы... 20028
Работа с инстру... 15572
Сейчас на сайте
Гостей: 1
На сайте нет зарегистрированных пользователей

Пользователей: 9,955
новичок: Logyattella
Друзья сайта
Ramblers Top100
Рейтинг@Mail.ru

Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ по Delphi
Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog
10.3 ТЕРМИНАЛЬНЫЕ ДРАЙВЕРЫ
Терминальные драйверы выполняют ту же функцию, что и остальные драйверы: управление передачей данных от и на терминалы. Однако, терминалы имеют одну особенность, связанную с тем, что они обеспечивают интерфейс пользователя с системой. Обеспечивая интерактивное использование системы UNIX, терминальные драйверы имеют свой внутренний интерфейс с модулями, интерпретирующими ввод и вывод строк. В каноническом режиме интерпретаторы строк преобразуют неструктурированные последовательности данных, введенные с клавиатуры, в каноническую форму (то есть в форму, соответствующую тому, что пользователь имел ввиду на самом деле) прежде, чем послать эти данные принимающему процессу; строковый интерфейс также преобразует неструктурированные последовательности выходных данных, созданных процессом, в формат, необходимый пользователю. В режиме без обработки строковый интерфейс передает данные между процессами и терминалом без каких-либо преобразований.
Программисты, например, работают на клавиатуре терминала довольно быстро, но с ошибками. На этот случай терминалы имеют клавишу стирания ("erase"; клавиша может быть обозначена таким образом), чтобы пользователь имел возможность стирать часть введенной строки и вводить коррективы. Терминалы пересылают машине всю введенную последовательность, включая и символы стирания [32] . В каноническом режиме строковый интерфейс буферизует информацию в строки (набор символов, заканчивающийся символом возврата каретки [33] ) и процессы стирают символы у себя, прежде чем переслать исправленную последовательность считывающему процессу.
В функции строкового интерфейса входят:
• построчный разбор введенных последовательностей;
• обработка символов стирания;
• обработка символов "удаления", отменяющих все остальные символы, введенные до того в текущей строке;
• отображение символов, полученных терминалом;
• расширение выходных данных, например, преобразование символов табуляции в последовательности пробелов;
• сигнализирование процессам о зависании терминалов и прерывании строк или в ответ на нажатие пользователем клавиши удаления;
• предоставление возможности не обрабатывать специальные символы, такие как символы стирания, удаления и возврата каретки.
Функционирование без обработки подразумевает использование асинхронного терминала, поскольку процессы могут считывать символы в том виде, в каком они были введены, вместо того, чтобы ждать, когда пользователь нажмет клавишу ввода или возврата каретки.
Ричи отметил, что первые строковые интерфейсы, используемые еще при разработке системы в начале 70-х годов, работали в составе программ командного процессора и редактора, но не в ядре (см. [Ritchie 84], стр.1580). Однако, поскольку в их функциях нуждается множество программ, их место в составе ядра. Несмотря на то, что строковый интерфейс выполняет такие функции, из которых логически вытекает его место между терминальным драйвером и остальной частью ядра, ядро не запускает строковый интерфейс иначе, чем через терминальный драйвер. На Рисунке 10.9 показаны поток данных, проходящий через терминальный драйвер и строковый интерфейс, и соответствующие ему управляющие воздействия, проходящие через терминальный драйвер. Пользователи могут указать, какой строковый интерфейс используется посредством вызова системной функции ioctl, но реализовать схему, по которой одно устройство использовало бы несколько строковых интерфейсов одновременно, при чем каждый интерфейсный модуль, в свою очередь, успешно вызывал бы следующий модуль для обработки данных, довольно трудно.

Комментарии
Нет комментариев.
Добавить комментарий
Пожалуйста залогиньтесь для добавления комментария.
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Случайные статьи
Технология совмест...
Глава 1. Выбираем ...
2.5. Пропуск этап...
Глава 6. Подключен...
Технические характ...
TDK XS-iV Tremor M...
Преодолевая ионосферу
ГЛАВА 11. ВЗАИМОДЕ...
5.1. Что находится...
Глава 11. BOTTOM L...
2.4.1 Кодирование ...
4.6 НАЗНАЧЕНИЕ ИНД...
4.12.2 Системы пер...
Патч-антенна
Sven 848
Измерение процессов
Простота работы и ...
Выводы
содержание - сетев...
Может это сущность ?
10.1.1 Конфигураци...
ГЛАВА 5. СИСТЕМНЫЕ...
Изображение атрибута
2.2.1. Понимание ...
Синтаксис диаграмм
Узнавание по форме
4.12.4.3 Низкоорби...
5.18 СОПРОВОЖДЕНИЕ...
Функциональный пример
7.4.3. Независимос...
1.1. Зрелые и незр...
Глава 9. Реальный GPS
Шинная топология
2.2.2.4 «Сон» и пр...
Глава 12. BOTTOM L...
5.4 ЗАХВАТ ФАЙЛА ...
5. Принципы реинжи...
Пролог
Проверка правильно...
Первая настройка с...
Мини-чат
Вам необходимо залогиниться.

Нет присланных сообщений.
Copyright © 2009