Linux 4.3.3编译

本文详细介绍了如何在内核源码中修改系统调用编号、架构和系统调用描述,并在sys.c文件中实现了一个简单的Hello World函数。包括在unistd.h文件中定义新的系统调用、在syscall_32.tbl文件中编辑系统调用配置、在sys.c文件中添加系统调用函数以及在syscalls.h文件中更新系统调用内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.在源码根目录下的include/uapi/asm-generic文件下的unistd.h文件进行223的修改
#define __NR_jbsyscall 223  
__SYSCALL(__NR_jbsyscall, sys_jbsyscall)


2.在arch/x86/entry/syscalls/下,有一个syscall_32.tbl文件,
在最后编辑系统调用的编号,架构,系统调用的内容描述,系统调用的调用别名(223     i386    jbsyscall     sys_jbsyscall)


3.在kernel文件夹下的sys.c文件中增加
#include <linux/linkage.h>
asmlinkage int sys_jbsyscall(char * buf){
        printk(KERN_EMERG"===========HELLO WORLD=============");
        printk(KERN_EMERG"FROM Ning %s!=====",buf);
        return 1;
}


4.在源码根目录下的include/linux文件夹下的syscalls.h文件中修改,查找sys_ioperm内容后面加入asmlinkage int sys_jbsyscall(char *);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值