Майкл Джонсон - Разработка приложений в среде Linux. Второе издание

Здесь есть возможность читать онлайн «Майкл Джонсон - Разработка приложений в среде Linux. Второе издание» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Город: Москва, Год выпуска: 2007, ISBN: 2007, Издательство: Вильямс, Жанр: ОС и Сети, Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Разработка приложений в среде Linux. Второе издание: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Разработка приложений в среде Linux. Второе издание»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Книга известных профессионалов в области разработки коммерческих приложений в Linux представляет собой отличный справочник для широкого круга программистов в Linux, а также тех разработчиков на языке С, которые перешли в среду Linux из других операционных систем. Подробно рассматриваются концепции, лежащие в основе процесса создания системных приложений, а также разнообразные доступные инструменты и библиотеки. Среди рассматриваемых в книге вопросов можно выделить анализ особенностей применения лицензий GNU, использование свободно распространяемых компиляторов и библиотек, системное программирование для Linux, а также написание и отладка собственных переносимых библиотек. Изобилие хорошо документированных примеров кода помогает лучше усвоить особенности программирования в Linux.
Книга рассчитана на разработчиков разной квалификации, а также может быть полезна для студентов и преподавателей соответствующих специальностей.

Разработка приложений в среде Linux. Второе издание — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Разработка приложений в среде Linux. Второе издание», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Управляющие символы — это символы со специальными значениями, которые могут отличаться в зависимости от того, находится ли терминал в каноническом или неформатируемом режиме ввода, и в зависимости от установок различных управляющих флагов. Каждое смещение (кроме VMINи VTIME) в массиве с_ссобозначает действие и содержит код символа, предназначенный для этого действия. Например, установите символ прерывания на Control-C с помощью следующего кода:

ts.с_сс[VINTR] = CTRLCHAR('С');

Макрос CTRLCHAR()определен как

#define CTRLCHAR(ch) ((ch)&0x1F)

Некоторые системы имеют макрос CTRL(), определенный в , но не поддерживаемый во всех системах, поэтому определение нашей собственной версии будет более надежным. Мы используем запись ^C для обозначения Control-C.

Расположения символов, не определенные POSIX, активны только в случае установки локального управляющего флага IEXTEN(c_lflag).

Управляющие символы, которые вы видите как индексы массива с_сс, перечислены ниже.

VINTR Смещение VINTRобычно устанавливается в ^C. Оно обычно сбрасывает на диск очереди ввода-вывода и передает SIGINTэлементам группы процесса переднего плана, ассоциированным с tty. Процессы, неявно обрабатывающие SIGINT, немедленно завершаются.
VQUIT Смещение VQUITобычно устанавливается в ^\. Оно обычно сбрасывает на диск очереди ввода-вывода и передает SIGQUITэлементам группы процесса переднего плана, ассоциированным с tty. Процессы, неявно обрабатывающие SIGQUIT, завершаются, при возможности сброса дампа ядра (см. главу 10).
VERASE Смещение VERASEобычно устанавливается в ^Hили ^?. В каноническом режиме оно обычно стирает предыдущий символ в строке. В неформатируемом режиме это несущественно.
VKILL Смещение VKILLобычно установлено в ^U. В каноническом режиме оно обычно стирает всю строку. В неформатируемом режиме это несущественно.
VEOF Смещение VEOFобычно установлено в ^D. В каноническом режиме оно заставляет read()на файловом дескрипторе возвращать 0, сигнализируя о состоянии конца файла. На некоторых системах оно может делить пространство с символом VMIN, активным лишь в неформатируемом режиме. (Это не проблема, если вы сохраните struct termiosс каноническими установками режима для восстановления действий в неформатируемом режиме, что все равно присуще практике программирования с применением termios.)
VSTOP Смещение VSTOPобычно установлено в ^S. Оно заставляет tty приостановить передачу выходных данных до получения символа VSTART, или, в случае установки IXANY, до получения любого символа.
VSTART Смещение VSTARTобычно установлено в ^Q. Оно запускает приостановленный вывод tty.
VSUSP Смещение VSUSPобычно установлено в ^Z. Оно вызывает передачу SIGTSTPтекущей группе процессов переднего плана; более подробно об этом рассказывается в главе 15.
VEOLи VEOL2 В каноническом режиме эти символы, а также символ новой строки ( '\n'), сигнализируют о состоянии конца строки. Это вызывает передачу скомпонованного буфера и запуск нового буфера. На некоторых системах VEOLможет делить пространство с символом VTIME, активным лишь в неформатируемом режиме, так же, как VEOFможет делить пространство с VMIN. Символ VEOL2в POSIX не определен.
VREPRINT Смещение VREPRINTобычно установлено в ^R. В каноническом режиме в случае установки флага ECHOоно вызывает локальное отражение символа VREPRINT, новой строки (и возврата каретки, если это допустимо), а также перепечатку всего текущего буфера. Этот символ в POSIX не определен.
VWERASE Смещение WERASEобычно установлено в ^W. В каноническом режиме оно стирает все пробелы в конце буфера, затем все остальные символы, что дает эффект стирания предыдущего слова в строке. Этот символ в POSIX не определен.
VLNEXT Смещение VLNEXTобычно установлено в ^V. Само оно не вводится в буфер, но вызывает литеральное помещение в буфер следующего символа, даже если это один из управляющих символов. Для того чтобы ввести один литеральный символ VLNEXT, введите его дважды. Этот символ в POSIX не определен.

Для отключения любой позиции управляющего символа установите его значение в _POSIX_VDISABLE. Это работает только в случае определения _POSIX_VDISABLEкак значения, не равного -1. _POSIX_VDISABLEработает в Linux, но переносимая программа, к сожалению, не сможет зависеть от отключения расположений управляющих символов во всех системах.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Разработка приложений в среде Linux. Второе издание»

Представляем Вашему вниманию похожие книги на «Разработка приложений в среде Linux. Второе издание» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Геше Джампа Тинлей - Лоджонг (второе издание)
Геше Джампа Тинлей
Алексей Филатов - Люди «А». Второе издание
Алексей Филатов
Отзывы о книге «Разработка приложений в среде Linux. Второе издание»

Обсуждение, отзывы о книге «Разработка приложений в среде Linux. Второе издание» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x