中断、异常与系统调用
2017-11-27 13:56
232 查看
之前看学堂在线的向勇老师的操作系统课程,有关中断、异常与系统调用的比较,在此作一些记录和注释。
源头
中断:外设引起
异常:应用程序意想不到的行为
系统调用:应用程序请求操作系统提供服务
响应方式
中断:异步
异常:同步
系统调用:异步或同步
处理机制
中断:持续,对用户应用程序是透明的
异常:杀死或者重新执行意想不到的应用程序指令
系统调用:等待和持续
几点说明:
1.一般所说的中断指的是外部中断,而异常是指内中断;
2.中断是由来自处理器外部的I/O设备的信号的结果,是CPU执行指令以外的事件而产生的;
3.异常与当前执行指令有关,异常的响应发生在指令的执行过程中,例如一般人们说的缺页中断属于异常而不是中断,因为缺页属于CPU执行指令时产生的中断,也就是内中断。
4.注意异常的处理机制是杀死或重新执行,具体哪种机制需要根据具体情况,如发生除数为0 的异常时,会自动跳过,也就是说杀死了这条指令,不可能返回到发生该异常的指令继续执行,访存缺页时系统会置换页面或分配内存,然后继续执行;
5.系统调用是操作系统提供给用户程序的接口。
源头
中断:外设引起
异常:应用程序意想不到的行为
系统调用:应用程序请求操作系统提供服务
响应方式
中断:异步
异常:同步
系统调用:异步或同步
处理机制
中断:持续,对用户应用程序是透明的
异常:杀死或者重新执行意想不到的应用程序指令
系统调用:等待和持续
几点说明:
1.一般所说的中断指的是外部中断,而异常是指内中断;
2.中断是由来自处理器外部的I/O设备的信号的结果,是CPU执行指令以外的事件而产生的;
3.异常与当前执行指令有关,异常的响应发生在指令的执行过程中,例如一般人们说的缺页中断属于异常而不是中断,因为缺页属于CPU执行指令时产生的中断,也就是内中断。
4.注意异常的处理机制是杀死或重新执行,具体哪种机制需要根据具体情况,如发生除数为0 的异常时,会自动跳过,也就是说杀死了这条指令,不可能返回到发生该异常的指令继续执行,访存缺页时系统会置换页面或分配内存,然后继续执行;
5.系统调用是操作系统提供给用户程序的接口。
相关文章推荐
- Linux内核源代码情景分析---第三章 中断、异常和系统调用
- 中断、异常和系统调用的关系
- linux内核中断、异常、系统调用的分析以及实践
- 3. ARMv8 中断及异常处理(包括系统调用,系统调用即同步异常)
- (二) 中断、异常和系统调用比较
- 启动、中断、异常和系统调用
- 中断、异常和系统调用
- 操作系统的中断、异常和系统调用
- 操作系统from清华大学向勇,陈渝 笔记(二)操作系统的启动、中断、异常、系统调用
- 中断,异常,系统调用,进程切换时的堆栈变化和寄存器保存
- linux内核中断、异常、系统调用的分析以及实践
- linux系统中关于中断、异常、系统调用、陷阱等概念的解析
- 【中断异常】系统调用
- 操作系统的学习(1)——启动,中断,异常和系统调用。
- 中断、异常和系统调用
- 【OS学习】之 启动、中断、异常和系统调用
- linux内核中断、异常、系统调用的分析以及实践
- 操作系统 中断异常系统调用
- 中断、异常、系统调用
- 中断、异常和系统调用