
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
异常机制的学习与应用是许多软件编程开发程序员都需要重点掌握的一个编程知识点,而本文我们就通过案例分析来简单了解一下,异常机制概念与作用分析。
一、异常
异常是异常控制流的一种形式,它一部分由硬件实现,一部分由操作系统实现。
异常就是控制流中的突变,用来响应处理器状态中的某些变化。
状态变化称为事件。在任何情况下,当处理器检测到有事件发生时,它就会通过叫做异常表的跳转表,进行间接过程调用(异常),到一个专门设计用来处理这类事件的操作系统子程序(异常处理程序)。
异常的类型:异步异常是由处理器外部的I/O设备中的事件产生的。同步异常是执行一条指令的直接产物
二、进程
进程提供给应用程序两个假象:1、独立的逻辑控制流:每个程序似乎独占CPU(由内核通过上下文切换机制来实现);2、私有的空间地址:每个程序似乎独占内存(由内核的虚拟内存机制来实现)
进程就是一个执行中的程序的实例。系统中每个程序都运行在某个进程的上下文中。
三、上下文切换
操作系统内核使用一种称为上下文切换的较高层形式的异常控制流来实现多任务。内核为每个进程维持一个上下文。
上下文是由程序运行所需的状态组成的,包括存放在内存中的程序的代码和数据,是内核重新启动一个被抢占的进程所需的状态。
当内核决定抢占(暂时挂起)当前进程后,它使用上下文切换机制来将控制转移到新的进程(也是先前被抢占的进程)。
四、系统调用错误处理
当Unix系统级函数遇到错误时,它们通常会返回-1并设置全局变量errno来表示出错原因。
使用错误处理包装函数来调用系统函数同时处理错误。
五、信号
信号就是一条小消息,它由内核发出,通知进程系统中发生了一个某种类型的事件。Linux系统支持30种不同类型的信号,信号类型用小整数ID来标识,每种信号类型都对应某种系统事件。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。