首页
社区
课程
招聘
[求助]中断描述符表中断号和硬件的关系
发表于: 2007-6-8 01:30 5586

[求助]中断描述符表中断号和硬件的关系

2007-6-8 01:30
5586
保护模式下发生中断或者异常时,处理器先从IDTR寄存器得到中断描述符表(IDT)的地址,然后取出其中N号中断或者异常的门描述符,再丛描述符中得到中断服务程序的地址XXXX:YYYYYYYY,经过段地址转换后得到服务程序的32位线性地址转移后执行,

我找了好久,一直不明白中断描述符表(IDT)的中断号和硬件产生的中断号有什么固定对应关系没有,
比方说,在实摸下,键盘中断号(IRQ1)在中断向量表里面就是INT 9号中断,很固定,
现在我想知道,在XP下,在RING0特权级中,中断描述符表(IDT)的每个中断号是不是都是对应固定的硬件中断呢,比如说,键盘,鼠标等等,我一直查不到这方面的资料,网上和书上都是只说了中断描述符表前16个中断号的硬件对应关系,就是没有说键盘,鼠标其它等等的,

实摸下我很清楚,也能写自己的中断例程
其实我就是不知道,在保护模式下,当产生了个硬件中断,它所对应的是哪个中断号,以及它和这个中断号是不是一直都是固定的关系,(听有人说,没有规定的关系,中断描述符表(IDT)的中断号只要电脑启动一次,就变一次,)我差点晕死,如果是这样的话,当一个硬件产生中断,我该如何把握呢,我如何编写自己处理它的中断程序呢,

有点长,请大家能指点一下,也希望大家告诉我哪有中断描述符表(IDT)所有中断号的详细介绍说明,谢谢了 :(

[课程]Linux pwn 探索篇!

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 208
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
HalGetInterruptVector
2007-6-8 11:03
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
我是初学,能不能多说点呢,
谢谢了
我在XP的RING0环里,比方说这次键盘(IRQ1)中断用的是中断序列符表的1号中断,而下次开机用的也可能就变成2号,或者3号中断了。
是不是这样的呢
能给肯定一下吗,谢谢了
2007-6-8 13:26
0
雪    币: 116
活跃值: (220)
能力值: ( LV12,RANK:370 )
在线值:
发帖
回帖
粉丝
4
看看APIC(高级可编程中断控制器)的资料你就知道了。。。
2007-6-8 13:48
0
雪    币: 116
活跃值: (220)
能力值: ( LV12,RANK:370 )
在线值:
发帖
回帖
粉丝
5
实模式下称为中断向量,Windows工作在保护模式之下,不再使用老的中断向量,而改用中断描述符表,中断向量号到Windows已经变成了中断描述符表的索引
基本上除了部份CPU定义的中断外,以前实模式下的中断在Windows下都不能用(被操作系统重新定义过了)。。。建议楼主多看看相关的书籍,这些都是基础知识,书上都有
2007-6-8 13:57
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
谢谢了 马上去补习
2007-6-8 19:56
0
游客
登录 | 注册 方可回帖
返回
//