博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
扒开系统调用的三层皮(下)
阅读量:5317 次
发布时间:2019-06-14

本文共 614 字,大约阅读时间需要 2 分钟。

5234+ 原创作品转载请注明出处 + 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 

1.给MenuOS增加time和time-asm命令

步骤

  • rm menu -rf //强制删除
  • git clonehttp://github.com/menging/menu.git // 克隆相关信息到menu
  • cd menu
  • make rootfs //自动编译,自动生成根文件系统,还能自动启动menuOS
  •  

2.使用gdb跟踪系统调用内核函数sys_time

  • qemu -kernel linux-3.18.6/arch/x86/bzImage -initrd rootfs.img -s -S
  • gdb
  • file linux-3.18.6/vmlinux
  • target remote:1234
  • 设置断点
  • 使用s进行单步的运行

3.系统调用在内核代码中的处理过程

  

系统调用的初始化:

4.实验:分析system_call中断处理过程

将getpid添加到menu中

首先在test.c的main函数中添加MenuConfig和相应函数

测试添加成功

调试过程如system_time,故不再重复

从system_call到iret可以用下图表示

 

 

转载于:https://www.cnblogs.com/mqy123/p/5324998.html

你可能感兴趣的文章
Fiddler 模拟请求的操作方法
查看>>
php 类名和方法名相同(构造函数)
查看>>
简单的尝试下angr
查看>>
51nod 1437 迈克步(单调栈)
查看>>
h5禁用手机input点击放大
查看>>
深入了解MyBatis参数
查看>>
indexof
查看>>
377. Combination Sum IV (DP)
查看>>
记录第一个360浏览器翻译插件
查看>>
自定义监控项
查看>>
MYSQL添加远程用户或允许远程访问
查看>>
Java复习之枚举
查看>>
简评某中国工程师嫌疑窃取苹果自动驾驶技术
查看>>
poj 1852 Ants
查看>>
es6简单介绍
查看>>
NYOJ 18
查看>>
HTML 笔记,持续更新
查看>>
适配器模式
查看>>
整形越界,死循环,产生莫名其妙的问题
查看>>
Linux 下一些报错的解决方法
查看>>