第1关:进程创建前后页目录和页表的变化
任务描述
本关任务分析版本 1 内核回答问题:
1.在 0 号进程执行 fork 系统调用之前,线性地址空间到物理地址空间的映射关系是怎样的?
2.在 0 号进程刚执行完 fork 系统调用时,线性地址空间到物理地址空间的映射关系是怎样的?
3.在 0 号进程执行 fork 系统调用前后,页目录发生了怎样的变化?
相关知识
为了完成本关任务,你需要掌握:
1.如何跟踪到一个系统调用的陷入指令(int 0x80)执行之前;
2.在 bochsdbg 中,如何跟踪到 0 号进程执行 fork 系统调用之前?如何继续跟踪到刚执行完该 fork 系统调用?
3.如何分析线性地址空间到物理地址空间的映射关系;
4.如何直接显示线性地址空间到物理地址空间的映射关系;
5.在 bochsdbg 调试模式下,如何判断当前进程是几号进程;
6.如何计算一个线性地址对应的物理地址;
7.如何查看 CR3 寄存器的值;
8.如何计算一个线性地址的高 10 位和中间 10 位的值;
9.页目录项和页表项的格式是什么;
10.如何查看某个页目录项的值;
1