跟踪分析Linux内核5.0系统调用reboot处理过程分析

本文详细记录了在Ubuntu18环境下,编译内核5.0,选择88号系统调用reboot进行跟踪分析的过程。通过查询系统调用表,插入reboot代码,并使用gdb在QEMU中调试,分析了系统调用的执行流程,包括进入内核空间、执行处理程序和返回用户空间的步骤,对比了系统调用与用户态函数调用的区别。
摘要由CSDN通过智能技术生成

原创作品转载请注明出处 + https://github.com/mengning/linuxkernel/
学号 088


实验要求

  • 编译内核5.0
  • 选择系统调用号后两位与您的学号后两位相同的系统调用进行跟踪分析

实验环境

  • Ubuntu18
  • 内核:Linux Kernel 5.0.1
  • qemu:运行内核代码的模拟器
  • gdb:断点调试工具

编译内核5.0

1.下载内核5.0压缩包,配置编译Linux内核

 > https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.0.1.tar.xz //下载内核压缩包 
 > tar -xvf linux-5.0.1.tar // 解压得到内核文件
 > cd linux-5.0.1 // 进入linux-5.0.1目录下
 > make menuconfig //编译信息进行配置
 > make 或 make -j* # *为cpu核⼼心数
编译信息进行配置

在这里插入图片描述

遇到的问题
 HOSTCC  scripts/basic/fixdep
 Unable to find the ncurses package.
 Install ncurses (ncurses-devel or libncurses-dev
 depending on your distribution)
scri
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值