第1关:1 号进程的核心栈内容分析
编程要求
根据相关知识,回答问题:(将答案填写在/data/workspace/myshixun/第三关.txt中)
1 号进程的核心栈栈底的位置是多少?
1 号进程(用 si)执行函数 task1 中的第一个 int 0x81 指令后,核心栈栈顶的位置是多少?从栈底到栈顶依次放了哪些内容?
本实训需要设置内核版本 1 为调试分析的对象,用 gdb 调试内核,内核版本 1 的压缩文件存放在/data/workspace/myshixun/exp1中。
cp /data/workspace/myshixun/exp1/1.tgz ~/os/
cd ~/os/linux-0.11-lab/
tar -zxvf ../1.tgz
rm -rf cur
ln -s 1 cur
cd 1/linux
make
cd ../..
启动虚拟机,在gdb调试器中输入:
b task1
c
x/6i $eip
si
p/x current->tss
si
p/x $esp
x/6wx $esp
效果如图:
答案如下:
第2关:0 号进程的核心栈内容分析
编程要求
根据相关知识,回答问题:(将答案填写在/data/workspace/myshixun/第四关.txt中)
0 号进程的核心栈栈底的位置是多少?
0 号进程(用 si)执行了 fork 系统调用中的陷入指令后,核心栈栈顶的位置是多少?从栈底到栈顶依次放了哪些内容?
本实训需要设置内核版本 1 为调试分析的对象,用 gdb 调试内核,内核版本 1 的压缩文件存放在/data/workspace/myshixun/exp1中。
cp /data/workspace/myshixun/exp1/1.tgz ~/os/
cd ~/os/linux-0.11-lab/
tar -zxvf ../1.tgz
rm -rf cur
ln -s 1 cur
cd 1/linux
make
cd ../..
启动虚拟机,在gdb调试器中输入:
b 145
c
n
p/x current->tss
x/3i $eip
si
si
p/x $esp
x/6wx $esp
效果如下:
如果您发现该资源为电子书等存在侵权的资源或对该资源描述不正确等,可点击“私信”按钮向作者进行反馈;如作者无回复可进行平台仲裁,我们会在第一时间进行处理!
添加我为好友,拉您入交流群!
请使用微信扫一扫!