Не существует руководства по системным вызовам, о котором я знаю, это то, для чего вам нужно покопаться в исходном коде.
Этот заголовочный файл полезен, так как он содержит множество системных вызовов, созданных на основе прототипов с аргументами.:
include/linux/syscalls.h
Содержит определения, например:
asmlinkage long sys_getresuid(uid_t __user *ruid, uid_t __user *euid, uid_t __user *suid);
asmlinkage long sys_getresgid(gid_t __user *rgid, gid_t __user *egid, gid_t __user *sgid);
asmlinkage long sys_getpgid(pid_t pid);
asmlinkage long sys_getpgrp(void);
asmlinkage long sys_getsid(pid_t pid);
asmlinkage long sys_getgroups(int gidsetsize, gid_t __user *grouplist);
Файл заголовка архивных системных вызовов содержит остальные системные вызовы, один из которых зависит от архива:
arch/x86/include/asm/syscalls.h
(эти файлы относятся к 2.6.32 - более ранние / более поздние версии ядер могут иметь разные имена файлов / каталогов).
Имейте в видучто внутренние компоненты ядра linux меняются довольно часто, и не требуется много усилий для поддержания стабильного ABI между основными версиями ядра.Итак, вам нужно взглянуть на исходный код ядра, на котором вы сейчас работаете, и не ожидать, что он автоматически скомпилируется в любой другой версии ядра.