nfs_svc, async_daemon
НАЗВАНИЕ
Управляющие процессы в NFS
СИНТАКСИС
nfs_svc(tep, addr, tsdu, buf)
int tep;
int addr;
int tsdu;
char *buf;
async_daemon()
<PrevPg>.ft B
ОПИСАНИЕ
Благодаря этим двум системным функциям процессы ядра могут
иметь пользовательский контекст.
Функция nfs_svc запускает процесс управления сетевой файловой
системы, ожидающий ответа на транспортном конце tep. Этот транспортный конец обычно связан с файловым дескриптором, возвращаемый
функцией t_open(): AF_INET (в терминологии 4.2BSD) или SOCK_DGRAM
(протокол UDP/IP), что определяется версией транспортного протокола локальной сети. С другой стороны транспортный конец должен
быть связан с портом межсетевого взаимодействия 2049. Addr - максимальный размер удаленного адреса, обрабатываемого транспортным
протоколом. Buf - адрес буфера, имеющего размер NFS_MAXDATA
(обычно 8192 байта), внутри процесса пользовательского уровня.
Этот буфер используется в локальной файловой системе программой
getdents(3). Функция возвращает управление только после удаления
процесса из системы.
Функция async_daemon соответствует сетевому процессу, занимающемуся обработкой результатов асинхронного ввода-вывода для клиента сетевой файловой системы. Управление после нее никому не передается.