头歌平台 操作系统课堂练习2.3:系统调用

阅读: 评论:0

头歌平台 操作系统课堂练习2.3:系统调用

头歌平台 操作系统课堂练习2.3:系统调用

第1关:版本1内核执行的前 3 个系统调用

任务描述

分析版本1内核,回答下列问题:
系统运行时,执行的前 3 个系统调用的编号和名字分别是什么?

相关知识

为了完成本关任务,你需要:跟踪系统调用的发生。

环境准备

本关卡使用版本 1 内核进行分析,版本 1 内核文件存放在/data/workspace/myshixun/exp1文件夹中。
使用 gdb 调试内核,跟踪到 main 函数入口的方法与之前实训一样。

cp /data/workspace/myshixun/ ~/os
cd ~/os/linux-0.11-lab
tar -zxvf ../1.tgz
rm -rf cur
ln -s 1 cur
cd 1/linux
make
cd ../..
./rungdb新建一个终端terminal
cd ~/os/linux-0.11-lab
./mygdb

跟踪系统调用的发生

系统调用的总控函数是 system_call ,只要在这里设断点,即可捕获系统调用的发生,如下图所示:

此时,系统调用号存放在寄存器 eax 中

 

重复上述操作

b system_call
c
disas
display $eax
disas
b *0x7780
c
x/3i $eip
si

 

 再次重复

b system_call
c
disas
display $eax
disas
b *0x7780
c
x/3i $eip
si

编程要求

根据相关知识,回答问题:(将答案填写在/data/workspace/myshixun/第一关.txt中)
系统运行时,执行的前 3 个系统调用的编号和名字分别是什么?

本文发布于:2024-01-28 16:54:04,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/17064320498879.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:课堂   操作系统   系统   平台
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23