第二章-中断和信号机制3
linux中的signal机制
Linux支持的信号列表如下。很多信号是与机器的体系结构相关的,首先列出的是POSIX.1中列出的信号:
信号 值 处理动作 发出信号的原因
----------------------------------------------------------------------
break;
case 2:
printf("Get a signal -- SIGINT ");
break;
(对于SIGSYS,SIGXCPU,SIGXFSZ,以及某些机器体系结构下的SIGBUS,Linux缺省的动作是A (terminate),SUSv2 是C (terminate and dump core))。
下面是其它的一些信号
信号 值 处理动作 发出信号的原因
(1) 与进程终止相关的信号。当进程退出,或者子进程终止时,发出这类信号。
(2) 与进程例外事件相关的信号。如进程越界,或企图写一个只读的内存区域(如程序正文区),或执行一个特权指令及其他各种硬件错误。
(3) 与在系统调用期间遇到不可恢复条件相关的信号。如执行系统调用exec时,原有资源已经释放,而目前系统资源又已经耗尽。
收 到信号的进程对各种信号有不同的处理方法。处理方法可以分为三类:第一种是类似中断的处理程序,对于需要处理的信号,进程可以指定处理函数,由该函数来处 理。第二种方法是,忽略某个信号,对该信号不做任何处理,就象未发生过一样。第三种方法是,对该信号的处理保留系统的默认值,这种缺省操作,对大部分的信 号的缺省操作是使得进程终止。进程通过系统调用signal来指定进程对某个信号的处理行为。
传递给信号处理例程的整数参数是信号值,这样可以使得一个信号处理例程处理多个信号。系统调用signal返回值是指定信号signum前一次的处理例程或者错误时返回错误代码SIG_ERR。下面来看一个简单的例子:
操作系统ppt chapter2处理器管理
g. Switch from user to kernel mode.
h. Access I/O device.
9
处理器状态(内核态和用户态)
• 处理器怎么知道当前是操作系统还是一般用户程序 在运行呢?
• 处理器状态标志: 管理状态(内核态、特权状态、系
操 PSW(Program Status Word)来区别不同的处理器 作 工作状态
系
统 • PSW用来控制指令执行顺序并保留和指示与程序有 关的系统状态,主要作用是实现程序状态的保护和 恢复
• 每个程序都有一个与其执行相关的PSW,每个处理 器都设置一个PSW寄存器。程序占有处理器执行, 它的PSW将占有PSW寄存器
系
统 ,停止处理器运行,将故障信息向操作员报告, 并对故障所造成的破坏进行估计和恢复。
30
程序错误包括:语法错误、逻辑错误和
操 执行过程中产生的异常(定点溢出、阶码下
作 溢、除数为0等)
系
统
操作系统主要处理第三类错误,操作系
统可以借助信号机制,将捕获的中断事件交
由程序自行处理
31
产生I/O中断的情况: 操 ➢ I/O操作正常结束
操 值、返回点以及子程序的局部变量。
作
系 核心栈:内存中属于操作系统空间的一块区域, 统 用于保存中断现场和操作系统程序间相互调用的
参数、返回值、返回点以及程序的局部变量。
12
2.1.2 程序状态字寄存器(1)
• 计算机如何知道当前处于何种工作状态?这时能否 执行特权指令?通常操作系统都引入程序状态字
统和分布存储(松散耦合)多处理
操作系统习题及答案
优先级,后者所得到的是
优先级。
25. 在 机。
调度算法中,按照进程进入就绪队列的先后次序来分配处理
26. 作业调度是高级调度,进程调度是低级调度。( 是否正确? )
27. 线程与进程的根本区别在于进程是
单位,而线程是
单位,
具有自己的主存空间,
共享该主存空间并对其所有主存空间都有存
取权限。
28.在多用户环境下,由多个程序共享一台计算机,机内资源状态将由多个程序 来改变,因此使程序失去了在顺序执行上时具有的________和________特 征。
2、( )优先权是在创建进程时确定的,确定之后在整个进程运行期间不再改变。 A.先来先服务 B.静态 C.动态 D.短作业
3、以下关于死锁的必要条件的叙述中错误的是( )。 A.只要具备了死锁的必要条件,就一定发生死锁现象 B.解决死锁问题可以从死锁的必要条件出发
C.一旦出现死锁现象,处于死锁状态的进程一定同时具备死锁的必要条件 D.死锁的四个必要条件之间不是完全独立的,但也不是等价的
的值为( )。
A. > 0
B.< 0
C.>= 0
D.<=0
6、如果进程 PA 对信号量 S 执行 P 操作,则信号量 S 的值应(
)
A.加 1
B.减 1
C.等于 0 D.小于 0
7、从静态角度上看,进程是由程序、数据及(
)三部分组成。
A. JCB
B. PCB
C. FCB
D .I/O 缓冲区
H、处于(
、
2. 进程是一个
态的概念,程序是一个
态的概念。
3. 操作系统中,可以并行工作的基本单位是 组成。
,它是由程序、
数据库作业第二章第三章
第二章一、思考题1.什么是PSW,它有何作用?psw:操作系统将程序运行时的一组动态信息会聚在一起,称为程序的状态字作用:实现程序状态的保护和恢复3.为什么要把机器指令分成特权指令和非特权指令?应用程序在执行有关资源管理的机制指令时易于导致系统混乱,造成系统或用户信息被破坏,因此在多道程序设计环境中,从资源管理和控制程序执行的角度出发,必须把指令系统中的指令分成这两类。
4.试分别从中断事件的性质、来源和实现角度对其进行分类从中断事件的性质和激活的手段来说,可以分成两类:(1)强迫性中断事件强迫性中断事件不是正在运行的程序所期待的,而是由于某种事故或外部请求信息所引起的,分为:机器故障中断事件。
程序性中断事件。
外部中断事件。
输入输出中断事件。
(2)自愿性中断事件自愿性中断事件是正在运行的程序所期待的事件。
按事件来源和实现手段分类:(1)硬中断;硬中断分为外中断(中断、异步中断)和内中断(异常、同步中断);(2)软中断;软中断分为信号和软件中断。
9.什么是系统调用?试述API、库函数及系统调用间的关系。
叙述系统调用执行流程。
由操作系统实现的所有系统调用所构成的集合即程序接口或应用编程接口(Application Programming Interface,API)。
系统调用是一种API,是应用程序同系统之间的接口。
库函数是语言本身的一部分,可以调用多个系统调用;系统调用(函数)是内核提供给应用程序的接口,属于系统的一部分,可以认为是某种内核的库函数;操作系统API是有系统调用(函数)的集合(也就是将许多的系统调用封装在了一起)。
一是编写系统调用服务例程;二是设计系统调用入口地址表,每个入口地址都指向一个系统调用的服务例程,有的还包括系统调用自带的参数个数;三是陷阱处理机制,需要开辟现场保护区,以保存发生系统调用时应用程序的处理器现场。
应用程序执行系统调用,产生中断指向内核态,进入陷阱处理程序,它将按功能查询入口地址表,并转至对应服务例程执行,完成后退出中断,返回应用程序断点继续运行。
计算机操作系统每章习题及答案
计算机操作系统每章习题及答案《操作系统》复习题第一章操作系统引论一、单项选择题1、操作系统是一种( B )。
A.应用软件B. 系统软件C.通用软件D. 工具软件2、操作系统是一组( C )。
A.文件管理程序B.中断处理程序C.资源管理程序D.设备管理程序3、现代操作系统的基本特征是( C )、资源共享和操作的异步性。
A.多道程序设计B. 中断处理C.程序的并发执行D. 实现分时与实时处理4、( D )不是操作系统关心的主要问题。
A. 管理计算机裸机B. 设计、提供用户程序与计算机硬件系统的界面C. 管理计算机系统资源D. 高级程序设计语言的编译器5、引入多道程序的目的在于( A )。
A. 充分利用CPU,减少CPU等待时间B. 提高实时响应速度C. 有利于代码共享,减少主、辅存信息交换量D. 充分利用存储器6、( A )没有多道程序设计的特点。
A. DOSB. UNIXC. WindowsD.OS/27、下列操作系统中,为分时系统的是( C )。
A. CP/MB. MS-DOSC. UNIXD. Windows NT8、在分时系统中,时间片一定,( B ),响应时间越长。
A.内存越多B.用户数越多C.后备队列越短D.用户数越少9、批处理系统的主要缺点是( B )。
A.CPU的利用率不高B.失去了交互性C.不具备并行性D.以上都不是10、在下列性质中,( D )不是分时系统的特征。
A. 交互性B. 同时性C. 及时性D. 独占性11、实时操作系统追求的目标是( C )。
A.高吞吐率B.充分利用内存C. 快速响应D. 减少系统开销12、CPU状态分为系统态和用户态,从用户态转换到系统态的唯一途径是( C )。
A. 运行进程修改程序状态字B. 中断屏蔽C. 系统调用D. 进程调度程序13、系统调用的目的是(A )。
A.请求系统服务B.终止系统服务C.申请系统资源D.释放系统资源14、系统调用是由操作系统提供的内部调用,它(B )。
16信号(一)
总结
中断 信号 信号与中断 signal
11
第十七章
信号(二)
12
本章目标
信号分类 可靠信号与不可靠信号 信号发送 pause
13
信号分类
可靠信号 不可靠信号 实时信号 非实时信号
14
不可靠信号
linux信号机制基本上是从unix系统中继承过来的。早期 unix系统中的信号机制比较简单和原始,后来在实践中暴 露出一些问题,它的主要问题是:
sigprocmask(2-1)
#include <signal.h> int sigprocmask(int how, const sigset_t *set, sigset_t *oset); 功能:读取或更改进程的信号屏蔽字。 返回值:若成功则为0,若出错则为-1 如果oset是非空指针,则读取进程的当前信号屏蔽字通过 oset参数传出。如果set是非空指针,则更改进程的信号屏 蔽字,参数how指示如何更改。如果oset和set都是非空指 针,则先将原来的信号屏蔽字备份到oset里,然后根据set 和how参数更改信号屏蔽字。假设当前的信号屏蔽字为 mask,下表说明了how参数的可选值。
4
信号
信号是UNIX系统响应某些状况而产生的事件,进 程在接收到信号时会采取相应的行动。 信号是因为某些错误条件而产生的,比如内存段 冲突、浮点处理器错误或者非法指令等 信号是在软件层次上对中断的一种模拟,所以通 常把它称为是软中断
5
信号与中断
信号与中断的相似点:
(1)采用了相同的异步通信方式; (2)当检测出有信号或中断请求时,都暂停正在执行 的程序而转去执行相应的处理程序; (3)都在处理完毕后返回到原来的断点; (4)对信号或中断都可进行屏蔽。
第4.3节 VxWorks信号中断和定时
18
VxWorks中断处理流程
保存CPU寄存器 从中断控制器读中断向量号 顺序调用该中断服务程序 通知中断控制器中断服务程序结束 恢复CPU寄存器 返回
第4章
.
19
中断和优先级
第4章
.
20
ISR的使用限制
第4章
.
ISR执行完成之前,其它任务不能执行 ISR中不能调用某些VxWorks函数,尤其是,ISR不
信号量
ISR释放信号量,任务等待接收信号量
消息队列
ISR发送消息,任务等待接收消息,如果消息队列满,该消息被丢弃
管道
ISR向管道写消息,任务读消息
信号
ISR可以向任务发送signal。
23
调试中断
第4章
.
中断处理程序可以调用logMsg()向系统输出诊断信 息
logMsg(“foo = %d\n”,foo,2,3,4,5,6) 向tLogTask发送请求为我们实现printf()的功能
轮询硬件 检查系统错误
VxWorks提供对两种定时器的相同的接口
系统时钟 辅助时钟
26
系统时钟
第4章
.
系统时钟完成下列工作
增加ticks计数(使用tickGet()获得计数值)
更新延时和超时计数器
检查循环调度
默认的时钟频率是60Hz
sysClkRateSet()
设置时钟频率
参考sigLib (组件:INCLUDE_SIGNALS)
6
信号编号
第4章
.
31个信号编号,从1-31
#define #define #define #define
操作系统的逻辑结构
管态
用户态
操作系统的程序执行
使用全部指令
(包括一组特权指令)
使用全部系统资源
(包括整个存储区域)
用户程序执行 禁止使用特权指令
只允许用户程序访问 自己的存储区域
处理机的状态不断变化, 它有时会处于用户态, 有时会处于管态。
a
中断 嵌套
中断 自陷核态Fra bibliotek用户态中断自陷 返回
UNIX系统处理机状态转换 11
4. 特权指令集
在核态下操作系统可以使用所有指令,包括一 组特权指令。
• 改变机器状态的指令 • 修改特殊寄存器的指令 • 涉及外部设备的输入/输出指令
允许和禁止中断; 在进程之间切换处理机; 存取用于内存保护的寄存器; 执行输入和输出操作; 停止一个中央处理机的工作。
a
12
实例操作系统如何区分处理机的状态
a
13
必要的硬件支持
存储器
主存储器(主存、内存):
处理机能直接访问的存储器称为主存储器,用来存放正在或 将要执行的系统和用户程序和数据以及程序执行时要求的临 时存储空间。 只读存储器ROM(Read-only memory): ROM称为BIOS,
用来存放基本的I/O程序。 随机访问存储器 RAM(random access memory)
辅存储器(辅存、外存):
处理机不能直接访问的存储器,如磁盘、磁带、光盘等,用 来存放大量的数据信息。
a
14
时钟
时钟是操作系统运行时必不可少的硬设施,它以固 定的时间间隔产生中断信号,这对于实施进程调度、 计算系统资源的消耗、实时控制等功能是必不可少 的。
在操作系统中需时钟支持的工作有:
处理机调度; 实时控制; 提供用户和系统所需的绝对时间(日历时钟、墙钟)。
计算机操作系统名词解释
第一章引论1操作系统:操作系统是管理和控制计算机系统内各种硬件和软件资源,有效地组织多道程序运行的系统软件(或程序集合),是用户与计算机之间的接口。
2管态:当执行操作系统程序时,处理机所处的状态3目态:当执行普通用户程序时,处理机所处的状态。
4多道程序设计:在这种设计技术下,内存中能同时存放多道程序,在管理程序的控制下交替的执行。
这些作业共享CPU和系统中的其他资源。
5并发:是指两个或多个活动在同一给定的时间间隔中进行。
它是宏观上的概念。
6并行:是指两个或多个活动在同一时刻同时执行的情况。
7吞吐量:在一段给定的时间内,计算机所能完成的总工作量。
8分时:就是对时间的共享。
在分时系统中,分时主要是指若干并发程序对CPU时间的共享。
9实时:表示“及时”或“既时”。
10系统调用:是用户在程序中能以“函数调用”形式调用的、由操作系统提供的子功能的集合。
每一个子功能称作一条系统调用命令。
它是操作系统对外的接口,是用户级程序取得操作系统服务的唯一途径。
11特权指令:指指令系统中这样一些指令,如启动设备指令、设置时钟指令、中断屏蔽指令和清内存指令,这些指令只能由操作系统使用。
12命令解释程序:其主要功能是接收用户输入的命令,然后予以解释并且执行。
13脱机I/O:是指输入/输出工作不受主机直接控制,而由卫星机专门负责完成I/O,主机专门完成快速计算任务,从而二者可以并行操作。
14联机I/O:是指作业的输入、调入内存及结果输出都在CPU直接控制下进行。
15资源共享:是指计算机系统中的资源被多个进程所功用。
例如,多个进程同时占用内存,从而对内存共享;它们并发执行时对CPU进行共享;各个进程在执行过程中提出对文件的读写请求,从而对磁盘进行共享等等。
第二章进程和线程1顺序性:是指顺序程序所规定的每个动作都在上个动作结束后才开始的特性。
2封闭性:是指只有程序本身的动作才能改变程序的运行环境。
3可再现性:是指程序的执行结果与程序运行的速度无关。
中断技术
2.按照中断信号的来源和实现手段来分 按照中断信号的来源,可把中断分为硬中断和软中断两类。 •硬中断可以分为外中断和内中断 (1)外中断(又称中断)指来自处理器和主存之外的中断。 外中断包括:电源故障中断、时钟中断、控制台中断、它机中 断和I/O中断等。 不同的中断具有不同的中断优先级,处理高一级中断时,往往 会屏蔽部分或全部低级中断。 (2)内中断(又称异常)指来自处理器和主存内部的中断。 内中断可分成三类:访管中断;硬件故障中断:电源出错,协 处理器错误,奇偶校验错误,总线超时等;程序性异常:非法 操作、页面故障、调试指令、地址越界、浮点溢出、除数为零。 异常(内中断)是不能被屏蔽的,一旦出现应立即响应并加以 处理。
②中断时保存现行 PSW
主存专用双字单元 (16进制) 18 20 28 30 38 外中断旧PSW 访管中断旧PSW 程序中断旧PSW 机器故障中断旧PSW I/O中断旧PSW
现行PSW
④中断后恢 复PSW
①装配中断码 ③中断时装入现 行PSW
58 60 68 70 78
外中断新PSW 访管中断新PSW 程序中断新PSW 机器故障中断新PSW I/O中断新PSW
(3)中断和异常的区别
•中断是由与现行指令无关的中断信号触发的(异步的),系统 不能确定中断信号发生的时间。
•中断与CPU是异步的,CPU对中断的响应是被动的。
•中断的发生与CPU处在用户模式或内核模式无关,通常在 两条机器指令之间才可响应中断,一般来说,中断处理程 序提供的服务不是为当前进程所需的,如时钟中断、硬盘 读写服务请求中断;
中断向量表 新栈顶 中断堆栈
IBM PC机中断的响应过程
Hale Waihona Puke .2.4 中断事件处理1.中断和异常的一般处理过程 处理中断事件的程序称为中断处理程序。它的主要任务是处理 中断事件和恢复正常操作。 •中断事件的处理比异常事件的处理复杂: •对于当前进程来说,中断是异步事件,中断处理程序工作 在核心态的中断上下文中,不允许被阻塞; •中断处理程序应该能够为共享同一根中断请求线的多台设 备服务; •中断处理程序的执行事件应该尽可能短,以减少关中断的 时间。
课后练习题(问答题)
第一章操作系统引论1、设计现代 OS 的主要目标是什么?2、OS 的作用可表现在哪几个方面?3、试说明推动多道批处理系统形成和发展的主要动力是什么。
4、何谓脱机 I/O 和联机 I/O ?5、实现分时系统的关键问题是什么?应如何解决?6、为什么要引入实时操作系统?7、试在交互性、及时性以及可靠性方面,将分时系统与实时系统进行比较。
8、OS 有哪几大特征?其最基本的特征是什么?9、处理机管理有哪些主要功能?它们的主要任务是什么?10、内存管理有哪些主要功能?它们的主要任务是什么?11、设备管理有哪些主要功能?其主要任务是什么?12、文件管理有哪些主要功能?其主要任务是什么?13、是什么原因使操作系统具有异步性特征?14、何谓微内核技术?在微内核中通常提供了哪些功能?第二章进程管理1 程序并发执行,为什么会失去封闭性和可再现性?2 试画出下面四条语句的前趋图:S 1 : a : =x+y ;S 2 : b : =z+1 ;S 3 : c : =a-b ;S 4 : w : =c+1 ;3 为什么程序并发执行会产生间断性特征?4 在操作系统中为什么要引入进程概念?它会产生什么样的影响?5 试从动态性、并发性和独立性上比较进程和程序。
6 试说明 PCB 的作用,为什么说 PCB 是进程存在的惟一标志?7 试说明进程在三个基本状态之间转换的典型原因。
8 在进行进程切换时,所要保存的处理机状态信息有哪些?9 试说明引起进程创建 / 撤消的主要事件。
10 在创建 / 撤消一个进程时所要完成的主要工作是什么?11 试说明引起进程阻塞或被唤醒的主要事件是什么?12 进程在运行时,存在哪两种形式的制约?并举例说明之。
13 同步机构应遵循哪些基本准则?为什么?14 如何利用信号量机制来实现多个进程对临界资源的互斥访问?并举例说明之。
15 在生产者 - 消费者问题中,如果缺少了 signal(full) 或 signal(empty) ,对执行结果将会有何影响?16 试利用记录型信号量写出一个不会出现死锁的哲学家进餐问题的算法。
处理器管理
8
四、处理器的状态
根据运行程序对资源和机器指令的使用权限将处理器设 置为不同状态,处理器状态又称为处理器模式。
多数系统将处理器工作状态划分为核心态和用户态。
1.核心态(Kernel Mode)
CPU执行操作系统程序时所处的状态。较高的特权级别,又 称为特权态(特态)、系统态 、管态。
26
2.中断屏蔽
在CPU上运行的程序,有时由于种种原因, 不希望其在执行过程中被别的事件所中断, 称为中断屏蔽。
在PSW中设置中断屏蔽位以屏蔽某些指定的中 断类型 各设备接口中也有中断禁止位,以禁止该设 备的中断
27
3.多个中断的处理
若中断处理过程中又发生中断,引起多中断处理问题。
两种策略方法:
一、进程的概念
计算机出现以来,“程序”是使用广泛的一个概念, 在多道程序设计技术出现之前,程序是顺序执行的。
1.程序的顺序执行
例:在系统中有n个作业,每个作业都有三个处理步骤: 首先输入用户的程序和数据(Ii),然后进行计算(Ci), 最后将结果打印出来(Pi )。
在计算机系统中只有一个程序在运行,这个程序独占 系统中所有资源,其执行不受外界影响。一道程序执行完 后另一道才能开始。
5
三、特权指令和非特权指令 1.处理器执行指令过程
处理器依据在程序计数器中的指令地址从存 储器中取一条指令 取到的指令放在指令寄存器(IR)中 处理器解释并执行指令 自动将程序计数器的值变成下条指令的地址
6
2.五类指令
(1)数据处理类指令; (2)转移类指令; (3)数据传送类指令; (4)移位与字符串类指令; (5)I/O类指令。
到底什么是中断 ??
中断解析一、中断是什么中断的汉语解释是半中间发生阻隔、停顿或故障而断开。
那么,在计算机系统中,我们为什么需要“阻隔、停顿和断开”呢?举个日常生活中的例子,比如说我正在厨房用煤气烧一壶水,这样就只能守在厨房里,苦苦等着水开——如果水溢出来浇灭了煤气,有可能就要发生一场灾难了。
等啊等啊,外边突然传来了惊奇的叫声“怎么不关水龙头?”于是我惭愧的发现,刚才接水之后只顾着抱怨这份无聊的差事,居然忘了这事,于是慌慌张张的冲向水管,三下两下关了龙头,声音又传到耳边,“怎么干什么都是这么马虎?”。
伸伸舌头,这件小事就这么过去了,我落寞的眼神又落在了水壶上。
门外忽然又传来了铿锵有力的歌声,我最喜欢的古装剧要开演了,真想夺门而出,然而,听着水壶发出“咕嘟咕嘟”的声音,我清楚:除非等到水开,否则没有我享受人生的时候。
这个场景跟中断有什么关系呢?如果说我专心致志等待水开是一个过程的话,那么叫声、电视里传出的音乐不都让这个过程“半中间发生阻隔、停顿或故障而断开”了吗?这不就是活生生的“中断”吗?在这个场景中,我是唯一具有处理能力的主体,不管是烧水、关水龙头还是看电视,同一个时间点上我只能干一件事情。
但是,在我专心致志干一件事情时,总有许多或紧迫或不紧迫的事情突然出现在面前,都需要去关注,有些还需要我停下手头的工作马上去处理。
只有在处理完之后,方能回头完成先前的任务,“把一壶水彻底烧开!”中断机制不仅赋予了我处理意外情况的能力,如果我能充分发挥这个机制的妙用,就可以“同时”完成多个任务了。
回到烧水的例子,实际上,无论我在不在厨房,煤气灶总是会把水烧开的,我要做的,只不过是及时关掉煤气灶而已,为了这么一个一秒钟就能完成的动作,却让我死死地守候在厨房里,在10分钟的时间里不停地看壶嘴是不是冒蒸气,怎么说都不划算。
我决定安下心来看电视。
当然,在有生之年,我都不希望让厨房成为火海,于是我上了闹钟,10分钟以后它会发出“尖叫”,提醒我炉子上的水烧开了,那时我再去关煤气也完全来得及。
比较MIINIX3操作系统的中断机制和信号机制
比较MIINIX3的中断机制和信号机制摘要:本文通过对MINIX3操作系统的中断机制和信号机制分析,以及对相关代码的研究,分别介绍了两个的工作原理,并在此基础上比较了MINIX3中断机制和信号机制。
关键词:MINIX操作系统;文件系统;文件读写机理;Implementation of the MINIX 3 File SystemXiaohua Lu(School of Mechanical Science & Engineering, Huazhong University of Science and Technology, Wuhan 430074,China )Abstract: Though the analysis of interrupt mechanism and Signal mechanism of the MINIX3 operating system, and the learning of the relative codes, the article have a brief introduction of how the interrupt mechanism and Signal mechanism work. And make comparisons between interrupt mechanism and Signal mechanism.Keywords: MINIX Operating System; interrupt mechanism; Signal mechanism.MINIX是一个多用户、多任务的操作系统。
系统允许有多个进程同时,各进程之间或是竞争某项资源,或是协同完成同一项任务。
出于安全考虑,MINIX操作系统采用了信息屏蔽原理,使得一个进程不能直接访问另一个进程资源,进程间只能通过消息传递进行相互通信。
MINIX 系统提供了多种IPC机制。
操作系统第二章习题答案3
第2章操作系统用户界面Page 362.1 什么是作业?什么是作业步?答:把在一次应用业务处理过程中,从输入开始到输出结束,用户要求计算机所做的有关该次全部工作称为一个作业,从系统的角度看,作业则是一个比程序更广的概念。
它由程序、数据和作业说明书组成,系统通过作业说明书控制文件形式的程序和数据,使之执行和操作。
而且,在批处理系统中,作业是抢占内存的基本单位。
也就是说,批处理系统以作业为单位把程序和数据调入内存以便执行。
作业由不同的顺序相连的作业步组成。
作业步是在一个作业的处理过程中,计算机所做的相对独立的工作。
例如,编辑输入是一个作业步,它产生源程序文件;编译也是一个作业步,它产生目标代码文件。
2.2 作业由哪几部分组成?各有什么功能?答:作业由三部分组成:程序、数据和作业说明书。
程序和数据完成用户所要求的业务处理工作,系统通过作业说明书控制文件形式的程序和数据,使之执行和操作。
2.3 作业的输入方式有哪几种?各有什么特点?答:作业的输入方式有5种:(1)联机输入方式:用户和系统通过交互式会话来输入作业。
(2)脱机输入方式:利用低档个人计算机作为外围处理机进行输入处理,存储在后援存储器上,然后将此后援存储器连接到高速外围设备上和主机相连,从而在较短的时间内完成作业的输入工作。
(3)直接耦合方式:直接耦合方式把主机和外围低档机通过一个公用的大容量外存直接耦合起来,从而省去了在脱机输入中那种依靠人工干预来传递后援存储器的过程。
(4)SPOOLING系统:SPOOLING又可译作外围设备同时联机操作。
在SPOOLING系统中,多台外围设备通过通道或DMA器件和主机与外存连接起来。
作业的输入输出过程由主机中的操作系统控制。
(5)网络输入方式:网络输入方式以上述几种输入方式为基础。
当用户需要把在计算机网络中某一台主机上输入的信息传送到同一网中另一台主机上进行操作或执行时,就构成了网络输入方式2.4 试述 SPOOLING 系统的工作原理。
北邮版《现代交换原理》课后习题参考答案
第一章1.1为什么说交换设备是通信网的重要组成部分?转接交换设备是通信网络的核心,它的基本功能是对连接到交换节点的传输链路上的信号进行汇集、转接和分配,实现多点到多点之间的信息转移交互。
1.2 电话通信网中两个用户终端进行通信时,交换机要完成那些操作?•交换机不断扫描用户线,以便及时检查用户摘机;•当用户摘机时,扫描器识别到用户摘机并将用户信息送到中央处理器分析,如果是合法用户,由中央处理器驱动信号音与用户连接,向用户送拨号音;•用户拨号信息(脉冲或双音频)由扫描器(或收号器)识别并送中央处理器分析处理(号码分析);•若被叫空闲,则主叫预占一交换网络话路,同时给被叫振铃,向主叫送回铃音;•被叫听振铃摘机,交换机将主叫预占的话路与被叫接通,于是主被叫可通话。
•交换机监视通话双方,一方挂机后发出拆线指令,一次通话完成。
或参考P7:BL10~P8:L101.3 一个普通电话机是怎样工作的?以号盘话机为例说明:参考课本P6:L8~L141.5 如何理解ATM交换综合了电路交换和分组交换的优点.1)采用固定长度的ATM信元异步转移复用方式。
2)ATM采用面向连接并预约传输资源的方式工作。
3)在ATM网络内部取消差错控制和流量控制,而将这些工作推到网络的边缘设备上进行。
4)ATM信元头部功能降低。
1.7 光交换技术的特点是什么?1)提高节点吞吐量。
2)降低交换成本。
3)透明性。
第二章2.1说明空分交换和时分交换,模拟交换和数字交换,布控交换和程控交换的基本概念。
答:书 21 页 2.1.2节2.2电路交换系统有哪些特点?1)电路交换是面向连接的交换技术。
2)电路交换采用静态复用、预分配带宽并独占通信资源的方式。
3)电路交换是一种实时交换,适用于对实时性要求高的通信业务。
2.3电路交换系统在呼叫处理方面应有哪些基本要求?答:书 23页 2.2.2节2.4电路交换机由哪些基本功能模块组成,并说明各模块作用?由终端接口功能、连接功能信令功能和控制功能等模块组成,终端接口功能主要作用是适配外部线路传输信号的特性要求,将外部信号传送格式与适合交换机内部连接功能所要求的格式进行相互转换,并协同信令功能模块收发信息。
四级操作系统原理_考试真题复习资料_全国计算机等级考试NCRE
四级网络工程师操作系统局部1.操作系统概论计算机系统包括硬件系统,软件系统计算机系统的资源包括两大类硬件资源和软件资源硬件系统:中央处理器,存储器,外存储器,以及各种类型的输入输出设备〔键盘,鼠标显示器,打印机〕软件系统:各种程序和数据软件系统又分为:应用软件,支撑软件〔数据库,网络,多媒体〕,系统软件〔操作系统,编译器〕集中了资源管理功能和控制程序执行功能的一种软件称为操作系统2.操作系统的任务:组织和管理计算机系统中的硬件和软件资源向用户提供各种效劳功能〔一方面向程序开发和设计人员提供高效的程序设计接口二向使用计算机系统的用户提供接口〕3.操作系统的特征并发,共享,随机4。
操作系统的功能进程管理存储管理文件管理作业管理和设备管理,用户接口5.操作系统的开展1.手工制作2.早期批处理3.多道批处理4.分时系统6.UNI*系统C语言编写,多用户,多任务,分时操作系统,树形文件系统7.个人计算机操作系统20世纪70年代微软MS DOS 单用户单任务1984年苹果操作系统1992 微软交互式操作系统WINDOWS 3.11995 window951991 linu* linu*遵循UNI*标准POSI* 继承UNI*全部优点8.安卓系统操作系统分类1.按用户界面的使用环境和功能特征批处理操作系统,分时操作系统,实时操作系统随后的开展多了个人操作系统,网络操作系统,分布式操作系统,嵌入式操作系统批处理操作系统:特点成批处理。
目标系统资源利用率高作业吞吐率高〔单位时间计算机系统处理作业的个数〕缺点:不能直接与计算机交互不适合调试程序重点1.1一般指令和特权指令运行模式:用户模式,特权模式为用户效劳的用户模式称作为目态为系统专用的特权模式称为管态机器指令划分为一般指令和特权指令特权指令包括〔输入输出指令,停机指令〕1.2 SPOOLing多道程序的根本思想是在存中同时保持多大作业,主机可以以交替方式同时处理多个作业分时系统设计思想:分时操作系统将CPU的时间划分为假设干个小片段称为时间片特点:多路性,交互性,独占性,及时性分时系统追求的目标是及时响应用户输入的交互命令,用来衡量系统及时响应的指标是响应时间,响应时间越短越好实时系统是使计算机能在规定的时间及时响应外部事件的请求主要目标在严格时间围,对外部请求作出反响,系统具有高度可靠性几个方面的能力1实时时钟管理2.过载防护3.高可靠性嵌入式操作系统高可靠性,实时性,占有资源少,智能化能源管理。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2.2.2 系统调用的处理方式
一般的函数调用序列并不能把进程的运行模式 从用户态变为核心态,而系统调用却可以做到 这一点。 实现它们的汇编代码形式通常以trap指令开头 (在Linux系统中是通过中断指令“INT 0X80” 实现的)。 trap指令的一般格式是: trap xx 参数1 参数2 ……
2.3.4 信号的检测和处理
图8-9 信号的检测与处理流程图
图8-2 硬件级的中断结构与过程
2.1.2 中断的处理过程
2.中断响应
对中断请求的整个处理过程是由硬件和软 件结合起来而形成的一套中断机构实施的。 硬件对中断请求做出反应的过程,称为中 断响应。 ① 中止当前程序的执行; ② 保存原程序的断点信息(主要是程序 计数器PC和程序状态寄存器PS的内 容); ③ 转到相应的处理程序。
16
17 18 19
SIGUSER1
SIGUSER2 SIGCLD SIGPWR
用户定义信号1
用户定义信号2 子进程终止 电源故障
2.信号的产生和传送
图8-8 有关信号的内部结构
2.3.3 信号的处理方式
u_signal[i]的值 零 非零奇数 非零偶数
信号的处理方式 进程终止自己 忽略该信号 其值为用户空间处理程序的入口地 址 表8-5 信号处理方式
(3)中断屏蔽的方式
可以用于整级屏蔽,也可用于单个屏蔽。
3.多重中断
(1)顺序处理方式
图8-4 多重中断的控制转移
(2)嵌套处理方式
图8-5 多重中断示例
2.2 系统调用处理 2.2.1 陷入事件的处理方式
在UNIX系统中,对异常的处理称做陷入。 引起陷入的事件可以分为两组:一组是自愿进 入陷入,称做自陷。 另一组是由于程序运行过程中出现软、硬件故 障或错误,也称做捕俘。 陷入处理的基本过程与中断处理基本相同。 统一进入陷入处理子程序(trap)。 ① 请求系统管理人员干预。 ② 按用户规定方式进行处理。 ③ 用户栈自动扩充。 ④ 系统调用处理。
图 系 统 调 用 实 现 过 程 示 例
8-6
2.3 信 号 机 制
1.信号的概念
2.3.1 信号机制概念
图8-7 利用信号机制实现进程间通信
2.信号与中断机制的异同
(1)信号机制与中断机制的相似之处 ① 信号机制与中断机制在概念上是一致 的。 ② 二者都是“异步”的。 ③ 二者在实现上都采用“向量表”的方 式。 ④ 都有屏蔽的手段。
图8-1 中断示意图
2.1.1 中断概述
引起中断的事件或发出中断请求的来源称为中 断源。 中断源向CPU提出的处理请求称为中断请求。 发生中断时,被打断程序的暂停点称为断点。 中断最初是作为通道(或设备)与CPU之间进 行通信的工具。 中断的概念后来得到进一步扩展。 其他部件也可以造成中断。 中断概念的另一个发展是访管指令(或系统调 用)的使用。
2.2.2 系统调用的处理方式
所有的陷入事件有一个总的服务程序,即陷入总 控程序。 系统调用处理函数根据trap指令后面的系统调用号 去查系统调用入口表,然后转入各个具体的系统 调用处理程序。
2.2.2 系统调用的处理方式
参数个数 0 1 标 志 1 1 处理程序 nosys rexit 注 释 0=indir 1=exit
4 5
diskintr
softintr
ttyintr
otherintr
表8-1 示意性中断向量表
Байду номын сангаас
中断号
0 1
说明
除法错误 调试异常
中断号
11 12
说明
段不存在 堆栈故障
2
3 4
空中断
断点 INTO检测溢出
13
14 15
一般性保护
页面故障 (Intel保留,未用)
5
6 7
边界范围异常
无效操作码 设备不可用
0
3 3 3
1
0 0 0
fork
read write open
2=fork
3=read 4=write 5=open
1
…
0
…
close
…
6=close
…
表8-3 系统调用入口表sysent结构
2.2.3 系统调用实现过程示例
设用户进程A在运行中要向已打开的文件(用 fd表示)写一批数据,为此在用户C源程序中 可用如下系统调用语句: rw=write (fd,buf,count); 这条语句经编译以后形成的汇编指令形式如下: trap 4 参数1 参数2 参数3 k1:……
16
17 18
浮点错误
调整检查 机器检查
8
9 10
双精度故障
无效任务状态段
19-31
(Intel保留,未用)
可屏蔽中断
协处理器段超限(保留) 22-255
表8-2 Intel Pentium处理器中断向量表
2.1.2 中断的处理过程
3.中断处理
(1)保存现场 ① 集中式保存是在系统内存区中设置一个 中断现场保存栈,所有中断的现场信息统一 保存在这个栈中。 ② 分散式保存是在每个进程的PCB中设置 一个核心栈,一旦其程序被中断,它的中断 现场信息就保存在自己的核心栈中。
表
8-4 UNIX S_5 的 信 号 分 类 及 其 含 义
9
10 11 12 13 14 15
SIGKILL
SIGBUS SIGSEGV SIGSYS SIGPIPE SIGALRM SIGTERM
要求终止该进程
总线超时 段违例 系统调用错 pipe文件只有写进程,没有读进程 报警信号 软件终止信号
(2)信号机制与中断机制的差别
① 中断机制是通过硬件和软件的结合来实 现的,而信号则完全由软件实现。 ② 中断向量表在系统空间中,每个中断向 量所对应的中断处理程序也在系统空间 中。信号机制与此不同,其“向量表” 在系统空间中,相应的信号处理程序却 在用户空间中。 ③ 一般情况下,CPU接到中断请求后会立 即做出响应和处理。而信号的检测和响 应要在特定情况下进行,如退出中断之
2.中断系统的作用
提高主机的利用率,使高速CPU可以和 低速的外部设备并行工作。 及时进行事故处理。 实现分时操作。 实现实时操作。 方便程序调试。
3.中断类型
不同的分类方法有不同的中断类型。 (1)按功能划分 机器故障中断。 I/O中断。 外部中断。 程序性中断。 访管中断。
2.1.1 中断概述
(2)按产生中断的方式划分 强迫中断。 自愿中断。
(3)按中断事件来源划分
中断。它是由CPU以外的事件引起的。 异常(Exception)。它是来自CPU内部 的事件或程序执行中的事件引起的过程。
系统调用也称软件中断(或陷入)。
2.1.2 中断的处理过程
1.中断的硬件结构
图 中 断 处 理 的 一 般 过 程
8-3
2.1.2 中断的处理过程
(2)分析原因
确定“中断源”或查证中断发生,识别 中断类型(确定是时钟中断还是盘中断)和 中断设备号(哪个磁盘引起的中断)。
(3)处理中断 (4)恢复现场
① 选取可以立即执行的进程。 ② 恢复工作现场。
2.1.3 中断优先级和多重中断
1.中断优先级
硬件设计时,一般把紧迫程度大致相当 的中断源归并为一组,称为一个中断级。 与某种中断相关的优先权称做它的中断 优先级。
2.中断屏蔽
(1)中断屏蔽和中断禁止 中断屏蔽是指在提出中断请求之后,CPU不予响 应的状态。 中断禁止是指在可引起中断的事件发生时系统不 接收该中断信号,因而就不可能提出中断请求而 导致中断。 (2)中断屏蔽的作用 ① 延迟或禁止对某些中断的响应。 ② 协调中断响应与中断处理的关系。 ③ 防止同类中断的相互干扰。
2.1.2 中断的处理过程
中断号 中断向量表 中断向量表的表项是中断向量。 中断向量因机器而异,通常包括相应中 断处理程序入口地址和中断处理时处理 机状态字PSW。
2.1.2 中断的处理过程
中 断 号 中断处理程 序
Clockintr
中 断 号
中断处理程 序
devintr
0
1 2
3
第2章 中断 概述
2.1 中 断 处 理 2.2 系统调用处理 2.3 信 号 机 制
2.1.1 中断概述
1.中断的概念 所谓中断是指CPU对系统发生的某个事件做出的一种 反应,它使CPU暂停正在执行的程序,保留现场后自 动执行相应的处理程序,处理该事件后,如被中断进 程的优先级最高,则返回断点继续执行被“打断”的 程序。
2.3.2 信号的分类、产生和传送
1.信号分类
信号号码
符号表示
含 义
1
2 3 4 5 6 7 8
SIGHUP
SIGINT SIGQUIT SIGILL SIGTRAP SIGIOT SIGEMT SIGEPE
进程被挂起
用户在键盘上按下Delete键或Ctrl+C 用户在键盘上按下Quit(Ctrl+\)键 非法指令 断点或跟踪指令 IOT指令 EMT指令 浮点运算溢出