【我所認知的BIOS】—>计算机中断系统(1)

本文介绍了8259A中断控制器的基础知识,包括中断概念、CPU获取中断请求的两种方式,重点讲解了8259A的7个寄存器和初始化流程。通过实例展示了8259A如何处理中断请求,并阐述了级联中断控制器的概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【我所認知的BIOS—>计算机中断系统(1

LightSeed     

2009-6-8     

中断有分为硬件中断和软件中断,顾名思义硬件中断是由计算机硬件产生的中断,类推软件中断是由计算机软件产生的中断。举个例子,当键盘有键按下需要CPU处理的时候就会经过8259产生一个中断,这个中断就是硬件中断。键盘是计算机硬件这个是不可否认的哦^.^DOS中断中的的INT 21H就是软件中断中的一种。一般来说可以这么理解,一切由8259负责产生的中断都是硬件中断。一切硬件中断都是由8259产生。(这里我也存在一个问题,CPU其实也是可以产生中断的,但是这个中断理论上应该不算是硬件中断。所以我也就没有把它规在硬件中断这一类。)鉴于篇幅太长,我分成几个小文章逐一讨论。

1、中断的基础知识

1.1  中断概念

中断是一种发生了一个外部的事件时调用相应的处理程序去处理的过程。见下图

 

1.2  CPU获取外部设备请求的两种方式

①查询方式

按序依次检查外设对应的状态变化,依据预先设定的规则,判断有请求,有则执行,无则继续。

优点:简单

缺点:加重CPU负担,浪费计算资源

②中断方式

中断是一种发生了一个外部的事件时调用相应的处理程序去处理的过程。

优点:需要用时才找CPU帮忙,能够并行处理多种I/O

缺点:程式设计以及实现过程比较复杂

1.3  早期的中断芯片8259programable interrupt controller

关于8259的背景资料以及其他资料不赘述,在此提纲挈领式地说一下它的背景。

编程中断控制器8259A
  Intel 8259A
是一种可编程中断控制器PIC,它是为管理Intel 80808085Intel 80868088CPU的可屏蔽中断而设计的,后来又被用于Intel 80286 CPU。在高档Pc系列机中,它的逻辑被集成到多功能接口芯片中。

  8259A
具有以下主要功能:

  ①
具有8级优先权控制,通过级联可扩展至64级优先权控制(PC上只扩展到16级);

  ②
每一级中断都可以屏蔽(笔者:来了中断也不汇报给CPU)或允许;

  ③
在中断响应周期,8259A可提供相应的中断类型号(笔者:供CPU计算得到中断向量号),从而能迅速转入中断服务程序;

  ④8259A
有几种中断管理模式,可以通过编程进行选择。

主要谈谈它关于中断请求的这个过程的一个详细论述,首先看看单个8259A对于中断的处理过程。

 

 

 


1 8259A中断响应流程图解

中断的过程可以简单地描述如下:(假如是KBD发生中断请求)

评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值