Testing

Map out your future hut do it in pencil
posts(12) comments(10) trackbacks(0)
  • 联系
  • RSS 2.0 Feed 聚合
  • 管理

公告

Welcome to my blog

常用链接

  • 我的随笔
  • 我的评论
  • 我参与的随笔

留言簿

  • 给我留言
  • 查看公开留言
  • 查看私人留言

随笔分类

  •  Programming
  •  Security(8)
  •  System(3)

Programming

  • 51testing
  • ChinaUnix
  • CSDN
  • MSDN
  • TechNet
  • 博客堂
  • 博客园

Security

  • Frsirt
  • Netexpert
  • SecuriTeam
  • SecurityFocus.
  • 安全焦点
  • 绿盟科技
  • 微软安全
  • 协议分析

搜索

  •  

最新评论

  • 1. re: SH-News scriptpath参数远程文件包含漏洞
  • 评论内容较长,点击标题查看
  • --custom writing
  • 2. re: SH-News scriptpath参数远程文件包含漏洞
  • 评论内容较长,点击标题查看
  • --Buy a Essay Online
  • 3. re: SH-News scriptpath参数远程文件包含漏洞
  • 评论内容较长,点击标题查看
  • --Already written essays
  • 4. re: SH-News scriptpath参数远程文件包含漏洞
  • 评论内容较长,点击标题查看
  • --well written essay
  • 5. re: SH-News scriptpath参数远程文件包含漏洞
  • 评论内容较长,点击标题查看
  • --buy research paper online

View Post

中断发生时候

中断发生时候,CPU自动调用相应的中断处理程序,这些中断处理程序的入口指针(被称作中断向量)一般被放在一个指定的位置,比如BIOS中断向量放在地址0-1K的空间内,每4个字节存放一个中断向量.而在保护模式下,BIOS中断不可用,中断向量被放在IDT中,当一个中断发生时,CPU将中断号作为索引到相应的中断处理程序表中(BIOS中断向量表(实模式)或IDT(保护模式))找到相应的中断处理程序的指针,并执行它.

另外,中断处理程序用C/C++还是ASM,还是机器语言写的并不重要,因为编译之后都是二进制机器指令或数据.但如果你的中断处理程序有空间和效率的限止,则一般使用汇编语言写,比如BIOS中断处理程序都是用汇编写的,被放在0xB0000-0xFFF00之间,而保护模式下,被OS开发者写的中断处理程序一般都是用C写的,比如linux.这些都不重要.
还有就是,BIOS中断处理程序被固化在ROM中,但BIOS中断向量表却是在PC启动时被POST(Power-On Self Test,是一段被固化在ROM中的程序)初始化在RAM中的,因此,你可以修改这些向量,让它们指向你自己写的程序.这样当中断发生时, CPU就会执行你所写的中断处理程序.

对于那些针对硬件操作的中断处理程序,我们看起来只要调用这些中断,就可以达到对硬件操作的效果(比如磁盘操作,显示器操作等等),但事实上,这只不过是中断处理程序直接调用I/O操作(in或out指令)来帮你完成了这一切罢了.

posted on 2006-10-04 20:54 testing 阅读(450) 评论(0)  编辑 收藏 引用 所属分类: System


只有注册用户登录后才能发表评论。
【推荐】100%开源!大型工业跨平台软件C++源码提供,建模,组态!
相关文章:
  • 映射ROM-BIOS地址
  • 中断发生时候
  • MBR加载过程
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理


 
Powered by:
C++博客
Copyright © testing