Linux内核分析作业五
扒开系统调用的三层皮(下)
给MenuOS增加time和time-asm命令
步骤
- rm menu -rf //强制删除
- git clone http://github.com/menging/menu.git // 克隆相关信息到menu
- cd menu
- make rootfs //自动编译生成根文件系统,自动启动
如何给MenuOS增加命令
更新menu代码到最新版
在main函数中增加MenuConfig
增加对应的函数
make rootfs
使用gdb跟踪系统调用内核函数sys_time
1)qemu -kernel linux-3.18.6/arch/x86/bzImage -initrd rootfs.img -s -S
2)gdb
3)file linux-3.18.6/vmlinux
4)target remote:1234
5)设置断点
6)使用s进行单步的运行
系统调用在内核代码中的处理过程
工作机制和初始化
简化后便于理解的system_call伪代码
系统调用实际就是一种特殊的中断