操作系统结构

来源:互联网 发布:诺基亚5235必备软件 编辑:程序博客网 时间:2024/05/17 21:07

操作系统提供的主要功能通常都是由操作系统内核程序实现的,CPU在运行上层程序时唯一能进入内核程序运行的途径就是通过中断或异常。

中断:也称外中断,指来自CPU执行指令以外的事件的发生。如,设备发出的各种I/O结束中断,表示设备I/O处理已完成,希望处理机向设备发下一个I/O请求,同时让完成I/O位的程序继续运行;时钟中断,表示一个固定的时间间隔已到让处理机处理计时,启动定时运行的任务等。这一类中断通常是与当前程序(进程)运行无关。不同中断具有不同的中断优先级,表示事件的紧急程度,在处理高级中断时,低级中断可以被临时屏蔽。

异常:也称内中断、例外或陷入(Trap)。指源自CPU执行指令内部的事件。对异常的处理一般要依赖于当前程序(进程)的运行现场,而是异常不能被屏蔽,一旦出现应立即处理。

区别:

中断与CPU执行中的指令无关的外部事件发生所引起的。中断具有不同级别,高级中断处理可临时屏蔽低级中断。

异常CPU执行中的指令所引起的某种事件(如:非法操作码,越界,溢出,缺页,陷入指令)。异常处理需要依赖与当前进程的运行现场,异常不能被屏蔽,一经发生立刻处理。

因为CPU可能在同一时刻收到多个外部中断信号,所以存在谁先被响应和谁先被处理的优先次序问题。因此在设计硬件时,对各类中断规定了高低不同的响应级别,把紧迫程度大致相当的中断源归并在同一级,而把紧迫程度差别较大的中断源放在不同的级别。级别高的享有绝对优先响应权利,即级别不同的两个以上中断信号同时出现时,首先响应级别搞的中断,而且级别搞的中断可以打断级别低的中断的处理过程。

中断屏蔽:指禁止中断出现或禁止响应中断。为了打破中断级别由硬件设计时确定的不灵活的固定模式,计算机提供可以程序设置中断屏幕的方法。 

在计算机系统中运行着两种不同性质的程序,一类是系统外层的应用程序,一类是操作系统内核程序。两类程序的作用不同,后者是前者的管理者和控制者。因此将CPU的运行状态分为用户态和核心态,用以保障系统的安全,核心态享有用户态所有能享有特权。如特权指令一般只允许核心态下执行。

异常是指CPU运行中程序遇到了某种内部状态需要被处理,而核心态是指程序在特权状态下运行。因此,核心态下运行的程序依然会产生异常。

 

原创粉丝点击