头歌操作系统 课后作业3.1:进程的描述与状态

服务器 0

第1关:1 号进程的核心栈内容分析

编程要求

根据相关知识,回答问题:(将答案填写在/data/workspace/myshixun/第三关.txt中)

  1. 1 号进程的核心栈栈底的位置是多少?

  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.tgzrm -rf curln -s 1 curcd 1/linuxmakecd ../..

启动虚拟机,在gdb调试器中输入:

b task1cx/6i $eipsip/x current->tsssip/x $espx/6wx $esp

效果如图:

答案如下:

第2关:0 号进程的核心栈内容分析

编程要求

根据相关知识,回答问题:(将答案填写在/data/workspace/myshixun/第四关.txt中)

  1. 0 号进程的核心栈栈底的位置是多少?

  1. 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.tgzrm -rf curln -s 1 curcd 1/linuxmakecd ../..

启动虚拟机,在gdb调试器中输入:

b 145cnp/x current->tssx/3i $eipsisip/x $espx/6wx $esp

效果如下:

答案如下:

也许您对下面的内容还感兴趣: