增加系统调用

本文详细介绍了如何在Linux内核中修改sys.c文件,添加新系统调用,包括修改源代码、增加系统调用号及实现新功能的步骤。此教程对于深入理解Linux内核开发和系统调用机制具有重要意义。

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

1、修改sys.c

      命令:sudo   gedit   /usr/src/linux-2.6.38.8/kernel/sys.c

      添加如下内容:

#include <linux/gt_fs.h>

asmlinkage long sys_rt_read(unsigned int ipointnr, __64 time, struct data_package_info *dpi)

{

      return my_sys_rt_read(ipointnr, time, dpi);

}

asmlinkage long sys_rt_write(unsigned int ipointnr, struct data_package_info *dpi, unsigned int cout)

{

      return my_sys_rt_write(ipointnr, dpi, count);

}

asmlinkage long sys_rt_info(struct rt_info m_info)

{

      return my_sys_rt_info(m_info);

}

2、增加系统调用号:

      命令:sudo gedit /usr/src/linux-2.6.38.8/arch/x86/include/asm/unistd_32.h

      添加如下内容:

#define __NR_rt_read               342

#define __NR_rt_write               343

#define __NR_rt_info                 344

#define NR_syscalls   344

3、增加系统调用

      命令:sudo gedit /usr/src/linux-2.6.38.8/arch/x86/kernel/syscall_table_32.S

      添加如下内容:

.long sys_rt_read               /* 342 */

.long sys_rt_write              /* 343 */

.long sys_rt_info               /* 344 */

4、编译内核

      。。。。。。

      (见“linux编译内核”一章)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值