ИМЯ fifo - специальный файл, организующий очередь (first-in first-out), именованный канал
ОПИСАНИЕ Специальный файл FIFO (именованный канал) подобен каналу, за исключением того, что доступен как часть файловой системы. Его можно открывать из нескольких процессов на чтении или запись. Когда процессы обмениваются данными через FIFO, ядро передаёт все данные без их записи в файловую систему. То есть, специальный файл FIFO не хранит содержимое в файловой системе; запись в файловой системе служит просто местом, посредством которого процессы могут получить доступ к каналу, используя имя в файловой системе.
Ядро поддерживает один объект канала для каждого специального файла FIFO, который открыт хотя бы одним процессом. Для того, чтобы пропускать данные, FIFO должен быть открыт как для чтения, так и для записи. Обычно, при открытии FI
...
Читать дальше »
|
ИМЯ feature_test_macros - макросы тестирования свойств
ОПИСАНИЕ Макросы тестирования свойств позволяют программисту контролировать какие определения будут доступны из системных заголовочных файлов при компиляции программы.
ЗАМЕЧАНИЕ: В целях эффективности, макрос тестирования свойств должен быть определён до включения всех заголовочных файлов. Это можно сделать или в команде компиляции (cc -DМАКРОС=значение) или определив макрос в исходном коде до включения заголовочных файлов.
Некоторые макросы тестирования свойств полезны для создания переносимых приложений; они позволяют блокировать нестандартные определения. Другие макросы можно использовать для разблокировки нестандартных определений, которые по умолчанию недоступны.
Действие каждого макроса тестирования свойств, описанного далее, можно узнать из содержимо
...
Читать дальше »
|
ИМЯ
fanotify - отслеживание событий в файловой системе
ОПИСАНИЕ
Программный интерфейс fanotify уведомляет о событиях в файловой системе и
перехватывает их. Например, его можно использовать для сканирования файлов на
вирусы и управления иерархическим хранилищем. В настоящее время, поддерживается
только ограниченный набор событий. В частности, не поддерживаются события
создания, удаления и перемещения (о программном интерфейсе для этих событий
смотрите в inotify(7)).
Дополнительные возможности по сравнению с программным интерфейсом inotify(7):
способность отслеживать все объекты в смонтированной файловой системе, давать
права на доступ и читать или изменять файлы перед тем как доступ получат другие
приложения.
...
Читать дальше »
|
ИМЯ epoll - средство уведомления о событии ввода-вывода
ОБЗОР #include <sys/epoll.h>
ОПИСАНИЕ Программный интерфейс epoll выполняется схожую с poll(2) задачу: следит за несколькими файловыми дескрипторами и ждёт, когда станет возможен ввод-вывод с одним из них. Программный интерфейс epoll можно использовать либо в режиме edge-triggered, либо в level-triggered и применять для слежения за достаточно большим количеством файловых дескрипторов. Для создания и управления экземпляром epoll служат следующие системные вызовы:
* Вызов epoll_create(2) создаёт экземпляр новый epoll и возвращает файловый дескриптор, указывающий на этот экземпляр (более новый epoll_create1(2) расширяет возможности epoll_create(2)).
* Затем с помощью epoll_ctl(2) регистрируются интер
...
Читать дальше »
|
ИМЯ environ - пользовательское окружение
ОБЗОР extern char **environ;
ОПИСАНИЕ Переменная environ указывает на массив указателей на строки, который называют «окружением» (environment). Последний указатель в этом массиве имеет значение NULL (данная переменная должна быть объявлена в программе пользователя, а кроме того она объявлена в заголовочном файле <unistd.h>, если определён макрос тестирования свойств _GNU_SOURCE). Указанный массив строк, становится доступным процессу после вызова exec(3), которая запускает процесс. Если дочерний процесс создаётся с помощью fork(2), то он наследует копию окружения своего родителя.
По договорённости, строки в environ имеют вид «имя=значение». Вот некоторые примеры:
USER Имя пользователя, зарегистрированного в системе (используется неко
...
Читать дальше »
|
ИМЯ ddp - реализация протокола AppleTalk в Linux
ОБЗОР #include <sys/socket.h> #include <netatalk/at.h>
ddp_socket = socket(AF_APPLETALK, SOCK_DGRAM, 0); raw_socket = socket(AF_APPLETALK, SOCK_RAW, protocol);
ОПИСАНИЕ В Linux реализованы протоколы AppleTalk, описанные в Inside AppleTalk. В ядре есть лишь уровни DDP и AARP. Они проектировались с учётом того, что ими будут пользоваться через библиотеку протоколов netatalk. В этой странице описан интерфейс для тех, кому требуется использовать уровень DDP напрямую.
Связь между AppleTalk и пользовательской программой реализована через интерфейс сокетов, совместимых с BSD. Дополнительную информацию о сокетах можно найти в socket(7).
Сокет AppleTalk создаётся из вызова socket(2), которому в качестве аргумента се
...
Читать дальше »
|
ИМЯ credentials - идентификаторы процесса
ОПИСАНИЕ ID (PID) процесса Каждый процесс имеет уникальный неотрицательный целочисленный идентификатор (PID), который ему назначается при создании с помощью fork(2). Процесс может узнать свой PID с помощью вызова getpid(2). PID имеет тип pid_t (определён в <sys/types.h>).
PID используется в различных системных вызовах для указания процесса, с которым работает вызов, например: kill(2), ptrace(2), setpriority(2) setpgid(2), setsid(2), sigqueue(3) и waitpid(2).
PID процесса сохраняется после execve(2).
Родительский ID (PPID) процесса ID родительского процесса — это ID процесса, который создал данный процесс с помощью fork(2). Процесс может получить свой PPID с помощью getppid(2). PPID имеет
...
Читать дальше »
| « 1 2 ... 14 15 16 17 18 19 » |