课堂练习3.1:进程的描述与状态
2.内核的函数调用栈中的底层函数是什么?(timer_interrupt)1.系统处于几号进程的上下文或者说,当前进程是几号进程?4.后续回到用户态时,恢复点的位置是什么?5.以前的断点位置是什么?A.(系统调用)B.(中断)C.(异常)启动dbg,注意不是gdb。3.内核处于哪种控制流?第一关环境下,gdb调试。再输入,最后按下回车键。
·
第1关:任务寄存器(TR)的分析
环境准备
cp /data/workspace/myshixun/exp1/1.tgz ~/os
cd ~/os/linux-0.11-lab
tar -zxvf ../1.tgz 1
rm -rf cur
ln -s 1 cur
cd 1/linux
make
gdb输入
b task1
c
p *current
p/x current->tss
p ¤t->tss
quit
退出gdb调试

启动dbg,注意不是gdb
./rundbg
再输入,最后按下回车键
b 0x7985
c
sreg
x/14wx 0x5cc0
第2关: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
finish
x/3i $eip
si
si
x/28i $eip
info registers
1.系统处于几号进程的上下文或者说,当前进程是几号进程?(0)
2.内核的函数调用栈中的底层函数是什么?(timer_interrupt)
3.内核处于哪种控制流?(B)
A.(系统调用)B.(中断)C.(异常)
4.后续回到用户态时,恢复点的位置是什么?(0x796c)
5.以前的断点位置是什么?(0x796c)
更多推荐




所有评论(0)