操作系统 实验1 GDT表分析+驱动调试

本文探讨了GDT(全局描述符表)的分析,详细解释了段选择子及其属性,并以选择子0x23为例进行解析。接着介绍了如何使用InstDrv加载驱动1.sys并用DbgView观察调试输出。文章还涵盖了Windbg的内核调试设置,包括符号表路径配置、查看加载驱动模块以及内核数据,如进程、SSDT和IDT表的检查。最后,通过XueTr和DbgView分析了驱动2对内核中断描述符表的修改。
摘要由CSDN通过智能技术生成

1.GDT表分析:给定段选择子0x23,分析对应的段描述符中相关属性取值:G/P/TYPE三种,并描述TYPE赋值的语义。
段选择子是什么?
引用GDT和LDT中的段描述符所描述的段,是通过一个16-bit的数据结构来实现的,这个数据结构叫做Segment Selector——段选择子。它的高13位作为被引用的段描述符在GDT/LDT中的下标索引,bit 2用来指定被引用段描述符被放在GDT中还是到LDT中,bit 0和bit 1是RPL——请求特权等级,被用来做保护目的。如图所示:
这里写图片描述

这里写图片描述

段选择子是一个16位的数字,INDEX:在GDT数组或LDT数组的索引号;G:LIMIT的单位,该位 0 表示单位是字节,1表示单位是 4KB;P: 段存在位,该位为 0 表示该段不存在,为 1 表示存在;TYPE: 根据 S 位

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值