首页 > Ubuntu 64位下添加系统调用,系统注册表需要修改的是syscall_64.tbl吗

Ubuntu 64位下添加系统调用,系统注册表需要修改的是syscall_64.tbl吗

因为修改了syscall_32.tbl没有用

我的添加系统调用步骤:

1、在unistd.h中添加系统调用号
2、在系统调用表中添加相应表项(原来在syscall_32.tbl中添加)
3、在kernel/sys.c末尾添加系统调用函数的定义
4、重新编译内核,过程中出现一句waring(不知道有没有关系):意思大概是 sys_mysyscall没有被实现,然后重启编译后的新内核
5、写用户态程序测试,发现没有报错,但是也没有实现系统调用

所以想问一下,64位 Ubuntu kylin 14.10 (内核 3.18.2)系统调用是怎样的,我可能哪里有问题?

谢谢!


你为什么要改 unistd.h?直接自己写个封装,调用 syscall(2) 就可以了嘛。

然后,既然程序有问题,不把程序拿出来看谁能够猜到问题在哪里呢?「没有实现系统调用」是什么意思?****加粗文字加粗文字

【热门文章】
【热门文章】