【发布时间】:2013-09-11 16:24:39
【问题描述】:
将系统调用添加到内核后,我尝试编译内核。
跑了2个小时,最后扔了
对的未定义引用>
知道发生了什么。
内核 3.9.3
接下来的步骤是 -
-
从www.kernel.org 获取内核代码。
wget http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.3.1.tar.bz2 -
使用命令
tar xvfj XXX将其压缩到文件夹示例:/root/kernel tar xvfj linux-3.3.1.tar.bz2 -
编辑文件
/root/kernel/linux-3.3.1/arch/x86/syscalls/syscall_64.tbl并添加新行312 64 husky1 sys_husky1 -
编辑文件
/root/kernel/linux-3.3.1/include/linux/syscalls.h在#endif声明前添加新函数asmlinkage long sys_husky1(int fd); -
在
/root/kernel/linux-3.3.1/arch/x86/kernel下添加一个新的c文件(我使用的是x86 CPU)示例:编辑
/root/kernel/linux-3.3.1/arch/x86/kernel/Makefile添加新行obj-y += husky.o -
转到
/root/kernel/linux-3.3.1文件夹并运行命令make –j8
【问题讨论】:
标签: linux linux-kernel kernel system-calls