头歌操作系统 课堂练习3.1:进程的描述与状态 答案 |
您所在的位置:网站首页 › 头歌educoder操作系统答案 › 头歌操作系统 课堂练习3.1:进程的描述与状态 答案 |
第1关:任务寄存器(TR)的分析
编程要求
根据相关知识,回答问题:(将答案填写在/data/workspace/myshixun/第一关.txt中) 1 号进程的任务状态段(TSS)的地址是多少?1 号进程的核心栈栈底的位置是多少? 1 号进程运行时,任务寄存器(TR)的值是多少?它指向的任务状态段描述符的值是多少?该描述符里记录的任务状态段起始地址是多少? 先配置版本内核1 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 ../..启动虚拟机 ./rungdb ./mygdb在gdb调试器: b task1 c p *current p/x current->tss p ¤t->tss quit启动dbg调试器: ./rundbg在dbg调试器中输入: b 0x7985 c sreg x/14wx 0x5cc0 扫描二维码关注公众号,回复: 15102343 查看本文章 第2关:1 号进程的状态变化 编程要求根据相关知识,回答问题:(将答案填写在/data/workspace/myshixun/第二关.txt中)1 号进程第一次由睡眠态变为就绪态时: 系统处于几号进程的上下文(或者说,当前进程是几号进程)? 内核的函数调用栈中的底层函数是什么?内核处于哪种控制流(选择:系统调用、中断、异常)? 后续回到用户态时,恢复点的位置是什么?以前的断点位置是什么? 该版本内核使用与第一关相同的版本1内核,详细环境配置操作请移步本文章第一关~ 在gdb调试器中: b sys_pause if current->pid==1 b sched.c:120 if p->pid ==1 c display current->state n c p p->pid p p->state bt disable finish list finish x/3i $eip si si x/28i $eip b *0x77dd c si disassemble info registers quit |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |