1.1. 例题
以下是(a)、(b)、(c)分别是引入不同缓冲区求解CPU中断频率和中断的响应时间问题。题中kb的b指的是位!装满时一次取走


中断响应频率求解

中断频率(每秒中断几次)=1s/(中断一次所需的时间)

解题顺序:
理解上
9.6kb/s所以一秒能装满9.6k次缓冲区,即中断9.6k次

公式上来理解
①中断一次需要的时间(缓冲区满所用的时间,即中断一次所需的时间):1bit ÷ 9.6k/s

②单位时间中断次数(中断频率):1s ÷ (1bit ÷ 9.6k/s)= 9.6(k/s)

——>每秒中断9.6k次 (9.6x1024次bit)

中断的响应时间求解:
基础:
什么是中断响应时间?
发出中断请求进入中断处理所用的时间

在这道题中就是装满了缓冲区,发出中断请求,到下次数据到来之前必须取走缓冲区数据的时间差,所以就是1÷9.6kb/s≈100ms

(b)的情况下

计算:
(b)的中断频率:
9.6k/s /8=1.2k/s

(b)的中断响应时间:

CPU必须在下一数据写入缓冲区之前,对当前缓冲区中数据进行响应处理,否则缓冲区中的数据将会被覆盖掉。

所以(b)中,要在下1bit数据输入缓冲区前,处理完数据、让出缓冲区。所以响应时间为100us以内(传输速率是9.7kb/s,所以每1bit数据到达时间需要100us)。所以从装满到取走最大时间间隔为100us.

(c)的中断响应时间:
因为©中设置两个缓冲区,响应时间就是在第一行装满,发出中断请求,然后把第一行放入第二行,当再次装满第一行时,即又来了8位数据时,做出响应全部取走即可,所以只要在另一个缓冲区装满时,处理并让出当前缓冲区即可。如下图,放满8个缓冲区一起处理。

所以中断响应时间放宽为100*8 = 800us

结论:
增加缓冲区的位数只能降低CPU的中断频率, 不能放宽CPU的中断响应时间,采用多行缓冲区则可以放宽缓冲时间。

中断频率是在数据放满时提出中断的频率、满了就要提出中断。

中断响应时间是在数据放满时提出中断,一直到下一个数据来时的间隔。

1.2. 现实生活例子

就拿学生上课迟到,老师处理学生来举例子。其中会有以下几个角色:

老师——对应着CPU
学生——对应着1bit数据
教室外的椅子——对应着缓冲区

情景①:
题目:老师正在讲课,并且在外面放置了一把椅子,供迟到的学生坐着等待,当椅子坐满学生后老师再叫进迟到的学生进行处理。老师很贴心必须让每一个迟到的人都能坐上椅子,并且每20s就会有一个迟到的学生到来。

题解:
中断频率:

60 ÷ 20 = 3 s
老师1分钟要停下3次来处理学生,中断频率为3(次/分)。

中断响应时间:20
因为老师必须在这个座位被学生坐着,在下一个学生到达之前,处理完该学生,让出椅子。所以老师的中断响应时间为20s以内。

情景②:
题目:接下来,老师把椅子增加到了8把。

题解:
中断频率:

8 ∗ 20 = 160 s
160s坐满椅子

60 ÷160 = 0.375
所以老师每分钟中断0.375次。

中断响应时间:
然而从座位坐满,发出坐满信号,到下一学生到达,还是20s到达,所以中断响应时间还是20s.

情景③:

题目:接下来,老师讲椅子数改为2排, 每排有8把椅子。每当坐满一排之后,老师再处理学生。

题解:
中断频率:

8*20 = 160 (s)
还是每160秒坐满椅子

60÷160 = 0.375
所以老师每分钟中断0.375次。

中断响应时间:

因为椅子变成两排,一排坐满发出中断信号,但是被迁移到另一排,不需要老师立刻去处理,所以老师只需要在两排都做满之前处理就可以。
20*8 = 160(s)
所以中断响应时间放宽到了160s。

关于中断频率、中断响应时间怎么求相关推荐

  1. 四,中断:中断程序(汇编和C语言)、idt、IDTR、8259A、8253以及发生中断时候的压栈细节和特权级保护

    中断: 由于CPU获知了计算机中发生的某些事,CPU暂停正在执行的程序,转而去执行处理该事件的程序,当这段程序执行完毕后,CPU继续执行刚才的程序,整个过程称为中断处理,也称为中断.没有中断,操作系统 ...

  2. STM32CubeMX实战教程(三)——外部中断(中断及HAL_Delay函数避坑)

    外部中断 前言 材料 NVIC 新建及配置工程 外部中断和事件中断 NVIC配置 进入代码 回调函数 HAL_Delay()分析 下载验证 结语 前言 学单片机的,相信对中断的概念都已经了如指掌了,中 ...

  3. 中断的分类,中断指令,中断类型码,中断向量表,中断优先级

    目录 PC机的中断系统 中断的分类 内部中断(软件中断) 故障 陷阱 异常终止 中断指令 指令类型中断指令 INT N 溢出中断指令  INTO 中断返回指令  IRET 外部中断(硬件中断) 非屏蔽 ...

  4. hal库开启中断关中断_「正点原子NANO STM32开发板资料连载」第十章 外部中断实验...

    1)实验平台:ALIENTEK NANO STM32F411 V1开发板 2)摘自<正点原子STM32F4 开发指南(HAL 库版>关注官方微信号公众号,获取更多资料:正点原子 第十章 外 ...

  5. pci中断号分配_西门子S7-200 SMART中断及中断指令概述

    中断就是中止当前正在运行的程序,去执行为立刻响应的信号而编写的中断服务程序,执行完毕后再返回原来中止的程序并继续执行.西门子S7-200 SMART CPU最多支持38个中断事件,其中8个为预留.为了 ...

  6. linux进程被中断打断,linux – 当中断处理程序被另一个中断中断时,中断上下文如何“恢复”?...

    我读了一些相关的帖子: You cannot sleep in an interrupt handler because interrupts do not have a backing proces ...

  7. STM32 关于外部中断线、中断源和中断服务函数的问题

    STM32 关于外部中断线.中断源和中断服务函数的问题 中断线问题: 上图可以看出,PA0.PB0...PG0共用的EXTI0中断线,PA1.PB1...PG1共用的EXTI1中断线,也就是 编程里面 ...

  8. 0中断优先级_西门子S7-200 SMART中断及中断指令概述

    中断就是中止当前正在运行的程序,去执行为立刻响应的信号而编写的中断服务程序,执行完毕后再返回原来中止的程序并继续执行.西门子S7-200 SMART CPU最多支持38个中断事件,其中8个为预留.为了 ...

  9. 计算机原理 中断,中断及中断系统-微计算机原理-电子发烧友网站

    当前位置:电子发烧友网 > 图书频道 > 电子 > <微计算机原理> > 第6章 中断与DMA 第2节 中断及中断系统 第二节 中断及中断系统 2.1 中断的概念 ...

最新文章

  1. Exchange 2010/2013 删除默认数据库
  2. 为更好提高客户对产品的满意度需要搞好站点建设问题
  3. 思科交换机和路由器的远程配置
  4. 重温Servlet学习笔记--response对象
  5. kmeanssklearn实例_sklearn实践(一):kmeans聚类
  6. Eclipse中安装Ext插件(Spket IDE)
  7. 20190724算法题存档
  8. 腾讯云linux读取windows数据盘,腾讯云服务器Centos挂载数据盘的方法
  9. Matlab 阶乘factorial
  10. 疫情防控中小学开学错峰错时返校放学方案
  11. 使用VBSCRIPT安装字体
  12. 【计算机网络技术】IP 地址共分哪几类?怎样确定一个IP地址它是属于哪一类的?
  13. 编解码学习笔记(九):QuickTime系列
  14. 【华人学者风采】王祥科 华北电力大学
  15. border-radius详解分享
  16. JAVA 项目打包和部署一站式解决方案
  17. Linux设置代理服务器
  18. Lombok 新特性(idea插件)
  19. 51开发实例 基于51单片机的火灾报警系统
  20. Java单例模式中的线程安全问题

热门文章

  1. 史上最全!统计学常用的数据分析方法大总结
  2. plc和pc串口通讯接线_三菱FX系列PLC与电脑之间串口RS232通讯协议简易解析
  3. selenium设置:浏览器不显示图片
  4. AI也搞种族歧视,误将黑人标记为灵长类动物
  5. 致我们即将逝去的青春,文字控吧
  6. CTU(coding_tree_unit)
  7. 正则神器,RegexBuddy
  8. 引人瞩目的区块链项目:EOS、IOTA、Cardano
  9. HA Of Rancher
  10. spoon-web网页版安装教程【kettle】