美文网首页
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 编写自定义系统调用函数

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