操作系统 -- 中断
中断和异常
中断的诞生:早期计算机各程序只能串行执行,系统资源利用率低。为了解决这个问题,人们发明了操作系统(作为计算机的管理者),引入中断机制,实现了多道程序并发执行。本质上来说就是:发生中断就意味着需要操作系统介入,开展管理工作。
中断的作用:
1:当中断发生时,CPU立即进入核心态
2:当中断发生后,当前运行的进程暂停运行,并由操作系统内核对中断进行处理
3:对于不同的中断信号,会进行不同的处理。
发生了中断,就意味着需要操作系统介入,开展管理工作。由于操作系统的管理工作(比如进程切换,分配I/O设备等)需要使用特权指令,因此CPU需要从用户态转为核心态。中断可以使CPU从用户态切换为核心态,使操作系统获得计算机控制权。有了中断,才能实现多道程序并发执行。
外中断的处理过程
1:执行完每个指令后,CPU都要检查当前是否有外部中断信号。
2:如果监测到外部中断信号,则需要保护被中断进程的CPU环境。
3: 根据中断信号类型转入相应的中断处理程序。
4: 恢复原进程的CPU环境并退出中断,返回愿进程继续往下执行。
系统调用
定义:是操作系统提供给应用程序(程序员/编程人员)使用的接口,可以理解为一种可供应用程序调用的特殊函数,应用程序可以发出系统调用请求来获得操作系统的服务。
作用:用户进程想要使用打印机这种共享资源时,只能通过系统调用向操作系统发出请求,操作系统会对各个请求进行协调管理。
库函数
操作系统 -- 中断相关推荐
- 操作系统--中断和异常
操作系统–中断和异常 中断机制的诞生 为了实现多道批程序并发执行的一种技术,而发明出中断,主要为了提高资源的利用率. 中断的概念 发生中断,就意味着需要操作系统介入开展管理工作,cpu会立即进入核心态 ...
- 操作系统--中断与系统调用
操作系统--中断与系统调用 1. 中断 1-1. 中断的概念 指处理器停止当前运行的程序,转而处理新的程序.新程序处理结束后,回来继续处理原来被停止的程序. 1-2. 中断的作用 提高计算机的运行效率 ...
- 【μC/OS-III】读书笔记,嵌入式微操作系统 中断管理
μC/OS-III是实时多任务操作系统,系统的实时性主要体现在对中断的响应上,要求能够尽可能快地响应中断,进入中断程序处理中断请求.μC/OS-III还要求中断服务程序运行的时间不能过长,长时间的运行 ...
- 操作系统——中断处理程序及设备驱动程序
中断处理程序及设备驱动程序 中断是指CPU在执行一个程序时,对系统中发生的某个事件做出的一个反应,它在操作系统中有着重要的有着重要的地位,时多道程序得以实现的基础. 引入缓冲区的原因: 外部中断:简称 ...
- 操作系统-思维导图整理
自制思维导图 文章目录 操作系统 基础 概述 功能和目标 发展阶段 中断和异常 系统调用 运行机制和体系结构 进程 概念 进程状态 进程控制 进程通信 线程.多线程模型 进程互斥和同步 死锁 处理机调 ...
- 实时操作系统---任务管理
目录 系列文章目录 前言 一.任务的创建 二.任务的栈空间 三.任务的挂起和恢复 1.挂起任务 2.恢复任务 四.删除任务 系列文章目录 第一章裸机系统与操作系统 第二章操作系统分类 第三章实时操作系 ...
- 操作系统学习笔记(1.计算机系统概述 2.进程与线程)
文章目录 第一章 计算机系统概述 操作系统的概念.功能 操作系统的特征 操作系统的发展与分类 操作系统的运行机制 中断和异常 系统调用 操作系统体系结构(上) 操作系统体系结构(下) 操作系统引导 虚 ...
- 操作系统修真秘籍汇总(直达元婴期)
限制进程:内核态和用户态 进程可分为两种类型.一是操作系统自身运行时的内核类进程,也称为操作系统进程.另一种即非内核类进程,不是操作系统自身的进程,而是想要实现某些功能,用户自己去启动的程序产生的进程 ...
- 零基础要怎么样学习嵌入式Linux
零基础要怎么样学习嵌入式希望可以通过这一篇帖子让大家走进嵌入式,对嵌入式的学习不再那么陌生. 嵌入式Linux工程师的学习需要具备一定的C语言基础,因此面对许多朋友只是在大一或者大二学习过C(还不一定 ...
最新文章
- Keras入门(一)搭建深度神经网络(DNN)解决多分类问题
- 兜兜转转一个圈,到底What is all you need?
- MyBatis-学习笔记05【05.使用Mybatis完成CRUD】
- ITK:将具有RGB像素的vtkImageData转换为itk :: Image
- 企业内网利用devpi搭建pypi私服
- 北大OJ(POJ 2808)校门外的树
- [ubuntu] duplicated values in $PATH
- 竞价这种方式适合不适合GPU云服务器,怎么买更划算??
- editor修改样式 vue_vue修改富文本中的元素样式
- 错误;找不到或无法加载主类 com.sun.tools.javac.main的解决方案
- Android 属性动画简单说明前篇(一)
- 加密狗Android软件,加密狗app
- 苹果计算机格式化磁盘,如何格式化Mac电脑硬盘_给Mac电脑格式化硬盘的方法
- 【3本精挑细选的书籍】网络爬虫推荐书籍(Python)【从0到实践】
- leetcode 17. 电话号码的字母组合
- 怎么用计算机弹少年这首歌,为什么《少年》这首歌,能火遍全网,它带来了多少收益呢?...
- spark.DataFrame离群值处理
- JAVA JMS 简介
- [JMX一步步来] 2、JMX简介
- 【C++ STL】vector模拟实现
热门文章
- python文件中用逗号分隔_在python中读取逗号分隔文件(包括日期)的最快方式
- 社会学对网络应用创新的三大启示
- 角色转变:新手项目管理的三大误区
- 计算机创建任务计划,win10系统创建计划任务的步骤
- omc服务器操作维护与日志管理,中兴通讯WCDMA网管综合解决方案-通信/网络-与非网...
- 如何移动 nuget 缓存文件夹
- html中加入音乐播放器,HTML网页添加音乐播放器做背景音乐代码-标签audio
- LTS分布式任务调度
- 四色着色问题 c语言编程,四色问题C语言怎么解决
- JDBC Requset 对应内容及功能介绍