我在哪里可以找到一些系统调用的源代码?例如,我正在寻找这里描述的fstat
实现。
我在哪里可以找到一些系统调用的源代码?例如,我正在寻找这里描述的fstat
实现。
一个系统调用通常在Linux内核中实现,只有很少量的粘合代码在C标准库中。但是也可以看看vdso(7)。
从用户层面来看,一个系统调用(它们列在syscalls(2)中...)是一条单独的机器指令(通常为SYSENTER
),具有一些调用约定(例如定义哪个机器寄存器保存系统调用号码 - 例如/usr/include/asm/unistd_64.h
中的__NR_stat
...-,以及哪些其他寄存器包含系统调用的参数)。
errno
)。