大部分实验过程参考:网易的唧唧歪歪
【一】、下载他用过的linux系统内核2.6.36
【二】、解压内核
将1中下载的文件解压缩, 在 /usr/src/目录下, 输入:
tar -jxvf linux-2.6.36.tar.bz2
解压出的文件夹名为:linux-2.6.36
【三】、添加系统响应函数:
修改 /usr/src/linux-2.6.36/kernel/sys.c文件, 在文件末尾添加函数:
asmlinkage int sys_mycall(int num)
{
printk("This is my system calling.");
return num;
}
【四】、添加到系统调用表
在/usr/src/linux-2.6.36/arch/x86/kernel/syscall_table_32.S 末尾添加:
.long sys_mycall
【五】、添加宏调用
在/usr/src/linux-source-2.6.35/arch/x86/include/asm/unistd_32.h 中添加宏:
#define __NR_my