ИМЯ rtnetlink - сокет маршрутизации IPv4 в Linux
ОБЗОР #include <asm/types.h> #include <linux/netlink.h> #include <linux/rtnetlink.h> #include <sys/socket.h>
rtnetlink_socket = socket(AF_NETLINK, int socket_type, NETLINK_ROUTE);
ОПИСАНИЕ Rtnetlink позволяет читать и изменять таблицы маршрутизации ядра. Он используется для взаимодействия различных подсистем внутри ядра (это здесь не описано), а также для взаимодействия пользовательских программ. Сетевыми маршрутами, IP-адресами, параметрами связи (link parameters), настройками соседства (neighbor setups), алгоритмами планирования очереди (queueing disciplines), классификацией трафика и и пакетными классификаторами можно управлять через сок
...
Читать дальше »
|
ИМЯ rtld-audit - программный интерфейс слежения за динамическим компоновщиком
ОБЗОР #define _GNU_SOURCE /* смотрите feature_test_macros(7) */ #include <link.h>
ОПИСАНИЕ Динамический компоновщик GNU (компоновщик времени выполнения) предоставляет API слежения, который позволяет приложению получать уведомления о различных событиях динамической компоновки. Данный API очень похож на интерфейс слежения, предоставляемый компоновщиком времени выполнения из Solaris. Необходимые константы и прототипы определены в <link.h>.
Чтобы использовать этот интерфейс, программист создаёт общую библиотеку функций со стандартизованными именами. Не все функции нужно реализовывать: в большинстве случаев, ес
...
Читать дальше »
|
ИМЯ regex - регулярные выражения POSIX.2
ОПИСАНИЕ Регулярные выражения (РВ) стандарта POSIX.2 могут быть двух видов: новые РВ (по сути, использующиеся в egrep; в POSIX.2 их называют ещё «расширенными» РВ) и устаревшие РВ (по сути, использующиеся в ed(1); в POSIX.2 их называют ещё «основными» РВ). Устаревшие РВ существуют, в основном, для совместимости с некоторыми старыми программами (они будут подробнее рассмотрены в конце этого документа). В POSIX.2 не разъяснены некоторые вопросы синтаксиса РВ; знаком (!) отмечаются описания, которые могут быть не полностью совместимы с другими реализациями POSIX.2.
Новое РВ — одна(!) или более непустых(!) ветвей, разделённых '|'. Соответствием считается, если есть совпадение д
...
Читать дальше »
|
ИМЯ raw - неструктурированные сокеты IPv4 в Linux
ОБЗОР #include <sys/socket.h> #include <netinet/in.h> raw_socket = socket(AF_INET, SOCK_RAW, int protocol);
ОПИСАНИЕ Неструктурированные (raw) сокеты позволяют реализовать новые протоколы IPv4 в пространстве пользователя. Через неструктурированный сокет получают или посылают необработанные датаграммы, не включающие в себя заголовки уровня соединения (link level).
Уровень IPv4 генерирует заголовок IP при посылке пакета, если только для сокета не включён параметр IP_HDRINCL. Если он включён, то пакет должен содержать заголовок IP. Принимаемые пакеты всегда содержат заголовок IP.
Для создания неструктурированного сокета процесс должен иметь мандат CAP_NET
...
Читать дальше »
|
ИМЯ random - обзор интерфейсов получения случайных чисел
ОПИСАНИЕ Генератор случайных чисел ядра полагается на энтропию, собранную с драйверов устройств и других источников окружающего шума, чтобы задать начальное значение криптографически безопасный генератор псевдослучайных чисел (CSPRNG). При разработке главным параметром была безопасность, а не скорость.
Следующие интерфейсы предоставляют доступ к данным ядерного CSPRNG:
* Устройства /dev/urandom и /dev/random, описаны в random(4). Данные устройства доступны с первых версий Linux, а также они есть и во многих других системах.
* Системный вызов, который есть только в Linux — getrandom(2), доступен начиная с Linux 3.17. Данный вызов предоставляет доступ к источнику как у /de
...
Читать дальше »
|
ИМЯ pty - интерфейсы псевдо-терминалов
ОПИСАНИЕ Псевдо-терминал (иногда применяют сокращение «pty») — это пара виртуальных символьных устройств, которые предоставляют двунаправленный канал обмена. Один конец канала называется основным (master); другой конец канала называется подчинённым (slave). Подчинённый конец псевдо-терминала предоставляет интерфейс, который работает также как обычный классический терминал. Процесс, который управляется через терминал, может открыть подчинённый конец псевдо-терминала и затем управляться программой, которая открыла основной конец. Всё что пишется в основной конец поступает процессу на подчинённом конце так, как-будто данные вводились с терминала. Например, запись символа прерывания (обычно control-
...
Читать дальше »
|
ИМЯ pthreads - нити POSIX
ОПИСАНИЕ В POSIX.1 определён набор интерфейсов (функции, заголовочные файлы) для работы с нитями, более известными как нити POSIX или Pthreads. В одном процессе может быть несколько нитей, которые выполняют одну программу. Эти нити работают с общей глобальной памятью (сегментами данных и кучи), но у каждой нити есть собственный стек (автоматические переменные).
Также, в POSIX.1 требуется, чтобы нити имели общий диапазон других атрибутов (т. е., эти атрибуты процесса, а не нити):
- идентификатор процесса
- идентификатор родительского процесса
- Идентификатор группы процессов и сеанса
- Управляющий терминал
- Идентификаторы пользователя и группы
- Открытые файловые дескр
...
Читать дальше »
| « 1 2 ... 4 5 6 7 8 ... 18 19 » |