oslab oranges 一个操作系统的实现 实验二 认识保护模式
https://github.com/yyu/osfs00 实验目的: 理解 x86架构下的段式内存管理 掌握实模式和保护模式下段式寻址的组织方式、 关键数据结构、代码组织方式 掌握实模式与保护模式的切换 掌握特权级的概念,以及不同特权之间的转移 实验内容: 1. 认真阅读章节资料,掌握什么是保护模式,弄清关键数据结构: GDT、descriptor、selector、GDTR, 及其之间关系,阅读 pm.inc文件中数据结构以及含义,写出对宏Descriptor的分析 2. 调试代码,/a/ 掌握从实模式到保护模式的基本方法,画出代码 流程图,如果代码 /a/中,第71行有dword前缀和没有前缀,编 译出来的代码有区别么,为什么,请调试截图。 3. 调试代码,/b/,掌握GDT的构造与切换,从保护模式切换回实 模式方法 4. 调试代码,/c/,掌握LDT切换 5. 调试代码,/d/掌握一致代码段、非一致代码段、数据段的权限 访问规则,掌握 CPL、DPL、RPL之间关系,以及段间切换的基 本方法 6. 调试代码,/e/掌握利用调用门进行特权级变换的转移 代码对应 iso中chapter3 实验解决问题与课后动手改: 1. GDT、Descriptor、Selector、GDTR结构,及其含义是什么?他 们的关联关系如何? pm.inc所定义的宏怎么使用? 2.