Архитектура операционной системы UNIX :: Бах Морис Дж.
Страница:
525 из 715
В каноническом режиме строковый интерфейс буферизует информацию в строки (набор символов, заканчивающийся символом возврата каретки [33] ) и процессы стирают символы у себя, прежде чем переслать исправленную последовательность считывающему процессу.
В функции строкового интерфейса входят:
• построчный разбор введенных последовательностей;
• обработка символов стирания;
• обработка символов "удаления", отменяющих все остальные символы, введенные до того в текущей строке;
• отображение символов, полученных терминалом;
• расширение выходных данных, например, преобразование символов табуляции в последовательности пробелов;
• сигнализирование процессам о зависании терминалов и прерывании строк или в ответ на нажатие пользователем клавиши удаления;
• предоставление возможности не обрабатывать специальные символы, такие как символы стирания, удаления и возврата каретки.
Функционирование без обработки подразумевает использование асинхронного терминала, поскольку процессы могут считывать символы в том виде, в каком они были введены, вместо того, чтобы ждать, когда пользователь нажмет клавишу ввода или возврата каретки.
Ричи отметил, что первые строковые интерфейсы, используемые еще при разработке системы в начале 70-х годов, работали в составе программ командного процессора и редактора, но не в ядре (см. [Ritchie 84], стр.1580). Однако, поскольку в их функциях нуждается множество программ, их место в составе ядра.
|< Пред. 523 524 525 526 527 След. >|