在我印象当中,中断描述符是占八个字节的,然儿,今天看<<rootkit:windows内核安全防护>>时,它却给出这样的结构:
typedef struct _idtentry
{
//中断执行代码偏移量的底16位;
unsigned short OffsetLow;
//选择器,也就是寄存器;
unsigned short Selector;
//保留位,始终为零;
unsigned char Reserved;
//IDT中的门的类型:包括中断门,陷阱门和任务门;
unsigned char Type:4;
//段标识位;
unsigned char SegmentFlag:1;
//中断门的权限等级,0表示内核级,3表示用户级;
unsigned char DPL:2;
//呈现标志位;
unsigned char Present:1;
//中断执行代码偏移量的高16位;
unsigned short OffsetHigh;
}IDTENTRY,*PIDTENTRY;
我数了数,这应该是11个字节吧
然后我在google了下,网络上关于门数据结构是:
GATE STRUC ;门结构类型定义
OFFSETL DW 0 ;32位偏移的低16位
SELECTOR DW 0 ;选择子
DCOUNT DB 0 ;双字计数字段
GTYPE DB 0 ;类型
OFFSETH DW 0 ;32位偏移的高16位
GATE ENDS
这个结构是占八个字节.
请大家帮帮忙,为什么?
- 标 题:关于"中断门"的数据结构
- 作 者:hpxpj
- 时 间:2008-04-14 13:31
- 链 接:http://bbs.pediy.com/showthread.php?t=63078