(Interrupt Latency) 中断延迟
中断延迟
(Interrupt Latency) 中断延迟
是指从硬件中断发生到开始执行中断处理程序第一条指令之间的这段时间。
也就是:
计算机接收到中断信号到操作系统作出响应,并完成换到转入中断服务程序的时间。
不严格地,也可以表述为:
(外部)硬件(设备)发生中断,到系统执行中断服务子程序(ISR)的第一条指令的时间。
另外,如果尽可能严格地考虑问题,那么还要考虑下列情况:
1.中断的详细情况就是:外界硬件发生了中断后,CPU到中断处理器读取中断向量,并且查找中断向量表,
找到对应的中断服务子程序(ISR)的首地址,然后跳转到对应的ISR去做相应处理。
此部分时间,我称其为:识别中断时间
2.在允许中断嵌套的实时操作系统中,中断也是基于优先级的,允许高优先级中断抢断正在处理的低优先级中断,
如ucOS/II,所以,如果当前正在处理更高优先级的中断,即使此时有低优先级的中断,
也系统不会立刻响应,而是等到高优先级的中断处理完之后,才会响应。
而即使在不支持中断嵌套,即中断是没有优先级的,中断是不允许被中断的,所以,如果当前系统正在处理一个中断,
而此时另一个中断到来了,系统也是不会立即响应的,而只是等处理完当前的中断之后,才会处理后来的中断。
此部分时间,我称其为:等待中断打开时间
3.在嵌入式系统中,如ucOS/II,(其他类似系统中也有此情况),
常用开关中断来实现共享区的互斥访问。
如:
//利用μC/OS_Ⅱ 宏调用关中断和开中断
void Function (void)
{
OS_ENTER_CRITICAL(); //关闭中断
.
.
.
OS_EXIT_CRITICAL(); //打开中断
}
所以,会出现这种情况:当前中断来了,但由于之前某个程序访问共享区,
而关闭中断了,导致当前中断得不到处理。而只有等待其访问完成共享区之后,再开中断。
(不过,一般来说,关中断的时间都很短,否则也就不适合用开关中断的方法来实现共享区互斥访问,
而应该用信号量或者其他手段实现。因为关中断时间长短,是衡量一个实时系统性能好坏的一个重要指标)
此部分时间,我称其为:关闭中断时间
4.其他的有待高人补充。
所以,总的中断延迟时间就可以表示为:
中断延迟 = 识别中断时间 + [等待中断打开时间] + [关闭中断时间]
当然,对于2,3两种情况,很多时候,并没有遇到,所以,一般多为中断延迟等于识别中断时间。
注:对于保存所要用到的寄存器内容或称保存现场,保存上下文等,此处也叫 中断前导,
并且做相应中断处理,
在处理完之后,进行恢复,此处也叫中断后续,
这些工作,是在中断处理子程序ISR完成的
相关文章:

Java项目:干活管理系统(java+SSM+Jsp+Mysql)
源码获取:博客首页 "资源" 里下载! 前台用户和后台管理员两种角色: 前台用户功能有:发布兼职、发布帖子、查看公告、个人中心、投诉等。 后台管理员功能有:用户管理、兼职管理、帖子管理、聊天管理、广告管…

20135234mqy 实验四
北京电子科技学院(BESTI) 实 验 报 告 课程:java程序设计 班级:1352 姓名:mqy 学号:20135234 成绩: 指导教师:娄嘉鹏 实验日期:2015.6…

我的第一张地图报表
一直以来对于地图都很陌生,感觉好强大,可以根据地理位置去分析数据,下面我简单的做了一张地图展示数据的报表。 接下来就简单的说一下设计过程和应该注意的地方 效果:(鼠标放在省份区域上,显示该省的数据&a…

SpringBoot第十篇:thymeleaf详解
作者:追梦1819 原文:https://www.cnblogs.com/yanfei1819/p/10931435.html 版权声明:本文为博主原创文章,转载请附上博文链接! 引言 SpringBoot 对 Web 的支持,官方推荐的是模板引擎 thymelaf。本章中&…

嵌入式系统开发过程中遇到的——volatile
嵌入式 系统开发过程中遇到的—— volatile 对于不同的计算机体系结构,设备可能是端口映射,也可能是内存映射的 。如果系统结构支持独立的 I/O 地址空间,并且是端口映射,就必须使用汇编语言完成实际对设备的控制ÿ…

薏米红豆粥的功效和实践演示
熬薏米红豆粥有很多技巧和讲究。薏米很硬,红豆也很硬,假设已经煮在锅里,大概熬一个多小时不坏,这是一种浪费火灾或电力,它甚至可以把水烧开,原因症结。我建议的方法有两种:第一种方法是在锅里加…

Java项目:财务预算管理系统(java+SSM+Jsp+Mysql+Layui+Maven)
源码获取:博客首页 "资源" 里下载! 一、项目简述 功能包括:实现公司对项目的管理。 二、项目运行 环境配置: Jdk1.8 Tomcat8.5 mysql Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持) …

POJ 3080 多个串最长公共子序列
求多个串最长公共子序列,字典序最小输出。枚举剪枝kmp.比较简单,我用find直接查找16ms #include<iostream> #include<string> #include<algorithm> using namespace std; string s[61]; int main() {int ta;cin>>ta;int n;while…

HDU 2561 第二小整数
2019-05-27 18:07:06 加油,坚持!!! 水题 #include <bits/stdc.h> using namespace std; int a[100]; int main() {int t;scanf("%d", &t);while(t--){int n;scanf("%d", &n);for (int i 0; i …

Java项目:在线高中考试系统(java+SSM+Jsp+Mysql+Maven)
源码获取:博客首页 "资源" 里下载! 项目分为前台和后台,前台主要为学生角色、后台主要为管理员角色。 管理员添加试题和发布试卷,学生负责在线考试、在线查看成绩和错题记录列表等。 管理员功能有:年级管理…

asp.net mvc 学习
Routing讲解: http://www.cnblogs.com/wangiqngpei557/p/3379095.html Filter讲解: http://www.cnblogs.com/ymnets/p/3452407.html ASP.NET MVC 支持以下类型的操作筛选器: 授权筛选器。 这些筛选器用于实现 IAuthorizationFilter 和做出关于…

Linux数据库性能优化--文件系统相关优化
实际也中也用到下文中所说的内存文件系统1、ramfs 记得是32位文件系统安装oracle 为oracle分配SGA突破1.7G大小限制2、mmap 的文件可以放在tmpfs挂载的文件系统中http://www.ibm.com/developerworks/cn/linux/management/tune/index.html1. 引言实践证明Lin…
jQuery Mobile的学习时间bottonbutton的事件学习
版权声明:本文为博主原创文章。未经博主同意不得转载。https://blog.csdn.net/xmt1139057136/article/details/27700521 程序猿都非常懒,你懂的! 生命的绝唱来机仅仅争朝夕,如诗的年华更需惜时如金。不要让今天的懈怠成为一生的痛…

C++中 public,protected, private 访问标号小结
第一:private, public, protected 访问标号的访问范围。 private: 只能由1.该类中的函数、2.其友元函数访问。 不能被任何其他访问,该类的对象也不能访问。 protected: 可以被1.该类中的函数、2.子类的函数、以及3.其友元函数…

Java项目:学生管理系统(java+Springboot+Maven+mybatis+Vue+Mysql)
源码获取:博客首页 "资源" 里下载! 一、项目简述 本系统功能包括: 学生管理,教师管理,课程管理,成绩管理,系统管理等等。 二、项目运行 环境配置: Jdk1.8 Tomcat8.5 M…

UVA 11752 超级幂
UVA 11752 超级幂 Z - The Super PowersTime Limit:1000MS Memory Limit:0KB 64bit IO Format:%lld & %llu Submit Status Practice UVA 11752Description 题意:定义一个数为超级幂,当这个数能表示成至少两个不同数字的幂时。如162^4&#x…

Awstats
c是一个非常简洁而且强大的统计工具。它可以统计您站点的如下信息:一:访问量,访问次数,页面浏览量,点击数,数据流量等精确到每月、每日、每小时的数据二:访问者国家、访问者IP、操作系统、浏览器…

fixture详细介绍-作为参数传入,error和failed区别
前言 fixture是pytest的核心功能,也是亮点功能,熟练掌握fixture的使用方法,pytest用起来才会得心应手! fixture简介 fixture的目的是提供一个固定基线,在该基线上测试可以可靠地和重复地执行。fixture提供了区别于传统…

哈佛结构和冯诺依曼结构区别。
哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储 器中读取数据,并进行下一步的操作(通常是执行)。程序指令存储和…

js 数据函数
//shift:删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefined var a [1,2,3,4,5]; var b a.shift(); //a:[2,3,4,5] b:1 //unshift:将参数添加到原数组开头,并返回数组的长度…

Java项目:平行志愿管理系统(java+Springboot+Maven+mybatis+Vue+Mysql)
源码获取:博客首页 "资源" 里下载! 一、项目简述本系统功能包括: 系统管理,招生计划,学生管理,录取结果,自动分配,调剂管理等等。 二、项目运行 环境配置: J…

冒泡 MS Azure 不便宜。。。
一直在等 MS Azure 中国开卖, 最近有消息说正式商用了。。。 看看去,ok 发现官方网站 很奇葩。没有购买的地方 说毛线 啊 卧槽 欺骗感情还是吊人胃口? 好看了一下VM的价格,卧槽真不便宜。 即使是 768 MB的也要 0.22RMB 小时。本来…

数据库的概念以及MYSQL的安装和卸载
一、数据库的基本概念: 1、什么是数据库? DataBase,简称DB。是用来存储和管理数据的仓库。 2、数据库的特点: 持久化存储数据的。其实数据库就是一个文件系统。方便存储和管理数据使用了统一的方式操作数据库——SQL 3、最热门…

对ARM异常(Exceptions)的理解
对ARM异常(Exceptions)的理解 1 .对 ARM 异常( Exceptions )的理解 所有的系统引导程序前面中会有一段类似的代码,如下: .globl _start ;系统复位位置 _s…

Java项目:花店商城系统(java+Springboot+Maven+mybatis+Vue+Mysql)
源码获取:博客首页 "资源" 里下载! 一、项目简述 本系统功能包括: 商品的分类展示,用户的注册登录,购物车,订单结算,购物车加减,后台商品管理,分类管理&#x…

简单又好看的按钮,扁平化按钮。
原文 http://blog.csdn.net/peijiangping1989/article/details/19333779主题 安卓开发今天分享一下流行的扁平化按钮。完全不需要用到图片哦。效果图如下: 里面有2个按钮都是一样的模式。只要修改的色值就可以。下面跟我来更新你的UI吧。 首先编写 button.xml 代码…

MahApps.Metro
ModernUI for WPF Mahapps.metro home Mahapps.metro Quick start Mahapps.metro controls转载于:https://www.cnblogs.com/xakml/p/3682173.html

用herl工具解决微信内链接或二维码可直接用外部浏览器打开
很多朋友问我怎么解决微信内点击链接或扫描二维码可以直接跳出微信在外部浏览器打开网页链接,其实这并不难,只要我们实现微信跳转功能即可。 下面给大家推荐 herl工具(http://www.nicejump.cn/) 使用步骤 1. 用浏览器打开我们的工…

shell之“/dev/null 21”
shell中可能经常能看到:>/dev/null 2>&1 命令的结果可以通过%>的形式来定义输出 分解这个组合:“>/dev/null 2>&1” 为五部分。 1:> 代表重定向到哪里,例如:echo "123" &g…
Java项目:角色权限后台脚手架系统(java+Springboot+Maven+myBaits-Plus+Vue+Element-UI+Mysql)
源码获取:博客首页 "资源" 里下载! Springboot框架myBaits-PlusMySQL实现的角色权限后台管理脚手架系统实战项目,实现的是所有系统最基础的后台管理功能,有了这个脚手架,以后开发别的项目就在这上面快速增加…