美文网首页
ubuntu 编写自定义系统调用函数

ubuntu 编写自定义系统调用函数

作者: autisticBoy | 来源:发表于2019-03-19 13:30 被阅读0次

本文可能会用到编译内核的相关知识,具体请看Ubuntu 编译内核

第一步:选定要编写的内核,解压

具体请看Ubuntu 编译内核

第二步:编写系统调用函数

进入安装的目录
cd /usr/src/linux-4.20.15/
sudo vim kernel/sys.c

在vim下 Ctrl+F Ctrl+B 快速翻页

在末尾加入自定义代码

asmlinkage void sys_hello(void)
{
  printk("hello");
}

printk 运行在内核态 之后用dmesg查看输出内容

按esc :wq!退出

第三步:声明调用函数

sudo vim arch/x86/include/asm/syscalls.h

IMG_5974.JPG

第四步:增加系统调用号

sudo vim arch/x86/entry/syscalls/syscall_64.tbl
(如图中的335)

IMG_5975.JPG

第四步: 编译内核

具体请看Ubuntu 编译内核

第五步:验证

编写C程序

int main()
{
syscall(335);
return 0;
}
  • gcc -o test test.c
  • ./test
  • dmesg

相关文章

  • ubuntu 编写自定义系统调用函数

    本文可能会用到编译内核的相关知识,具体请看Ubuntu 编译内核 第一步:选定要编写的内核,解压 具体请看Ubun...

  • 培训第十一天----复杂数据类型,链表

    昨日回顾 函数定义: 自定义不能嵌套自定义!!函数名不能与系统函数重名!! 函数声明: 函数调用 递归调用一定要有...

  • 在IDEA中从零编写Python函数

    摘要: 处于业务需求,我们需要编写自定义的Python函数供其他程序调用的时候,可以用IDEA编写Python函数...

  • Linux_Shell脚本编程之函数

    函数分为系统函数和自定义函数 自定义函数 基本语法: 调用直接写函数名:funname [值]应用实例:案例一:计...

  • js-创建对象的三种方式

    1 字面量的方式 2 调用系统的构造函数 3 自定义构造函数方式

  • mysql-自定义函数

    创建自定义无参数函数 调用自定义函数 创建有参数的自定义函数 调用有参数的自定义函数 创建具有复合结构的自定义函数...

  • Day9 函数

    函数 什么是函数函数就是对实现某一特定功能的代码段的封装 函数的分类系统函数:系统已经封装好,直接调用使用自定义函...

  • JavaScript创建对象的四种方式

    一.字面量的方式 二.调用系统的构造函数 三.自定义构造函数 四.工厂模式创建对象

  • JavaScript原型

    创建对象的三种方式 字面量的方式 调用系统的构造函数 自定义构造函数方式 自定义构造函数创建对象做的事情 使用工厂...

  • 自定义构造函数创建对象

    注意点:函数和自定义构造函数的区别? 普通函数在调用的时候直接 functionName(); 调用就行,自定义构...

网友评论

      本文标题:ubuntu 编写自定义系统调用函数

      本文链接:https://www.haomeiwen.com/subject/kaegmqtx.html