简单讲就是kernel提供给用户空间的一组统一的对设备和资源操作的接口, 用来user层和kernel交互, 完成相应的功能, 同时也对kernel层提供了一定的保护
用户空间通常不会直接使用系统调用, linux...这样就很清楚了, 如果要增加一个系统调用, 我们只需要:
先给要增加的系统调用定个名字;
按linux kernel的规范定义系统调用服务例程;
要系统调用表里添加系统调用号和系统调用的对应关系;
重新编译内核...;
我们心linux kernel 4.14.11为例, 实操一下, 首先需要要相应的内核源码
----
声明系统调用服务例程
假设我们新添加的系统调用名字为hello
打开源码下 include/linux...打开源码下arch/x86/entry/syscalls/syscall_64.tbl, 添加调用号333(根据自己的源码,可自定义):
333 64 hello.../test_syscall lw
使用dmesg命令查看,在结尾会有类似下面的显示:
[ 402.829360] Hello, lw!