Чтение онлайн

ЖАНРЫ

Программирование для Linux. Профессиональный подход

Самьюэл Алекс

Шрифт:

Для получения полного списка сигналов, поддерживаемых в Linux, необходимо выполнить такую команду:

% man 7 signal

Таблица В.1. Сигналы ОС Linux

Название Описание
SIGHUP
Linux посылает этот сигнал, когда происходит отключение от терминала. Многие программы применяют этот сигнал в совершенно иных целях: он служит указанием программе повторно прочитать свой файл конфигурации
SIGINT
Linux посылает процессу этот сигнал, когда пользователь пытается завершить процесс нажатием клавиш <Ctrl+C>
SIGILL
Процесс получает
этот сигнал при попытке выполнить недопустимую инструкцию. Это может означать повреждение стека программы
SIGABRT
Этот сигнал посылается функцией
abort
SIGFPE
По течение этого сигнала означает, что процесс выполнил недопустимую операцию с плавающей запятой. В зависимости от конфигурации центрального процессора результатом операции может стать специальное нечисловое значение, например
inf
(бесконечность) или
NaN
(не число), а не сигнал
SIGFPE
SIGKILL
Этот сигнал приводит к немедленному завершению процесса и не может быть перехвачен
SIGUSR1
Этот сигнал зарезервирован для прикладного использования
SIGUSR2
Этот сигнал зарезервирован для прикладного использования
SIGSEGV
Этот сигнал означает, что программа выполнила недопустимое обращение к памяти. Возможно, указанный адрес находится за пределами адресного пространства процесса или процессу запрещен доступ к этому участку памяти
SIGPIPE
Этот сигнал означает, что программа обратилась к разрушенному потоку данных, например к сокету, который был закрыт на противоположной стороне
SIGALRM
Доставка этого сигнала планируется функциями
alarm
и
setitimer
(см. раздел 8.13 "Функция setitimer: задание интервальных таймеров")
SIGTERM
Этот сигнал является запросом на завершение процесса и посылается командой
kill
по умолчанию
SIGCHLD
Linux посылает процессу этот сигнал при завершении одного из дочерних процессов (см. раздел 3.4.4, "Асинхронное удаление дочерних процессов")
SIGXCPU
Linux посылает процессу этот сигнал в случае превышения разрешенного времени доступа к центральному процессору (см. раздел 8.5, "Функции getrlimit и setrlimit: лимиты ресурсов")
SIGVTALRM
Доставка этого сигнала планируется функцией
setitimer
(см. раздел 8.13, "Функция
setitimer
: задание интервальных таймеров")

Приложение Г

Internet-ресурсы

В этом приложении перечислен ряд Web-узлов, где можно найти информацию о программировании Linux-систем.

Г.1. Общая информация

■ 

http://www.advancedlinuxprogramming.com
. Это Web-узел данной книги. Здесь можно загрузить текст книги в электронном виде вместе с исходными текстами программ, найти ссылки на другие ресурсы и получить дополнительную информацию о программировании в Linux.

■ 

http://www.linuxdoc.org
. Это Web-узел проекта Linux Documentation Project. Здесь находится хранилище всевозможной документации, а также FAQ-архивов.

Г.2. Информация о программном обеспечении GNU/Linux

■ 

http://www.gnu.org
. Это Web-узел проекта GNU Project. Здесь можно загрузить всевозможные бесплатно распространяемые программы. Среди них и GNU-библиотека языка С, содержащая многие из описанных в данной книге функций. Здесь же приведена информация о том. как внести свой вклад в развитие системы GNU/Linux, написав программный код и документацию либо использовав бесплатное программное обеспечение.

■ 

http://www.kernel.org
. Это основной Web-узел для распространения исходных кодов
ядра Linux и лучшее место для поиска ответов на самые сложные вопросы о том, как работает Linux. В разделе "Documentation" приведена информация о структуре ядра системы.

■ 

http://www.linuxhq.com
. Здесь также распространяются исходные коды ядра Linux наряду с "заплатами" и прочей информацией.

■ 

http://gcc.gnu.org
. Это Web-узел коллекции GNU-компидяторов (GCC). В нее входят компиляторы языков С, C++, Objective C, Java, Chill и Fortran.

■ 

http://www.gnome.org
и
http://www.kde.org
. Это Web-узлы двух наиболее популярных графических оболочек Linux: Gnome и KDE. Они понадобятся тем, кому необходимо разрабатывать приложения с пользовательским интерфейсом.

Г.3. Другие ресурсы

■ 

http://developer.intel.com
. Здесь содержится информация о процессорах Intel, включая архитектуру x86 (IA32). Отметим очень полезные справочники встроенных ассемблерных инструкций.

■ 

http://www.amd.com
. Здесь представлена аналогичная информация о процессорах AMD.

■ 

http://freshmeat.net
. Здесь находится список программ с открытыми кодами, в основном для платформы GNU/Linux. Это одно из лучших мест, где можно оперативно узнавать о программных новинках для Linux, начиная от базовых системных компонентов и заканчивая специализированными приложениями.

■ 

http://www.linuxsecurity.com
. Здесь содержится информация о программах, обеспечивающих безопасность Linux-систем. Этот Web-узел будет интересен пользователи, системным администраторам и разработчикам.

Приложение Д

Лицензия на публикацию программ с открытыми кодами, версия 1.0

I. Требования к модифицированной и немодифицированной версиям

Материалы, для которых действует лицензия на публикацию программ с открытыми кодами (далее "Лицензия"), могут публиковаться и распространяться как целиком, так и по частям, в любой среде, физической или электронной, при условии соблюдения требований Лицензии и включения самой Лицензии либо ссылки на нее (с любыми дополнительными ограничениями, выбранными автором/авторами и/или издателем) в публикацию.

Правильный способ включения ссылки таков:

http://www.opencontent.org/openpub/
).

Сразу за ссылкой могут быть указаны дополнительные ограничения, выбранные автором/авторами или издателем документа (см раздел VI. "Предусмотренные ограничения").

Коммерческое воспроизведение материалов, для которых действует Лицензия, запрещено.

Любая публикация в стандартном (книжном) виде должна сопровождаться ссылкой на исходного издателя или автора материалов. Имя издателя или автора должно указываться на всех сторонах обложки книги. На любой из сторон обложки имя исходного издателя должно быть набрано таким же шрифтом, как и название книги, и стоять в притяжательном падеже по отношению к названию книги.

II. Авторские права

Право на каждую копию материала, распространяемого на условиях Лицензии, принадлежит автору/авторам либо лицу, которое указано как таковое.

III. Область действия Лицензии

Следующие условия применимы ко всем материалам, распространяемым на условиях Лицензии, если в документе явно не указано обратное.

Простое объединение материалов, распространяемых на условиях Лицензии, или части таких материалов с другими материалами или программами на одном носителе не означает, что Лицензия переносится и на эти дополнительные материалы. Объединенный продукт должен содержать примечание, которое указывает на включение материалов, распространяемых на условиях Лицензии, а также соответствующее примечание, касающееся авторских прав.

■ Частичное нарушение лицензии. Если какая-либо часть Лицензии оказывается неприменимой в той или иной правовой сфере, оставшаяся часть Лицензии остается в силе.

■ Отсутствие гарантии. Материалы, для которых действует Лицензия, предоставляются "как есть" без какой-либо гарантии явной или подразумеваемой, в том числе (но не только) подразумеваемой гарантии годности к продаже и пригодности к конкретному применению, а также гарантии на ненарушение прав.

IV. Требования к модифицированным материалам

Все модифицированные версии документов подпадающих под действие Лицензии, включая переводы, сборники, компиляции и частичные публикации, должны соответствовать следующим требованиям.

1. Модифицированная версия должна быть помечена как таковая.

2. Должно быть указано лицо, вносящее модификации, а также дата модификации.

3. Ссылка на исходного автора и издателя, если имеется, должна быть сохранена в соответствии с обычными правилами цитирования академической литературы.

1-9899100101102103104105106107108
Поделиться с друзьями: