操作系统进程管理OS2_1_(1)
操作系统课后习题答案-汤子瀛(txt版)
3. OS 具有哪几大特征?它的最基本特征是什么?
a. 并发(Concurrence),共享(Sharing),虚拟(Virtual),异步性(Asynchronism).
b. 其中最基本特征是并发和共享.
4. 内存管理有哪些主要功能?它们的主要任务是什么?
b. 产生死锁的原因有二,一是竞争资源,二是进程推进顺序非法;
c. 必要条件是: 互斥条件,请求和保持条件,不剥夺条件和环路等待条件.
第四章:
1. 何谓静态链接及装入时动态链接和运行时的动态链接?
a. 静态链接是指事先进行链接形成一个完整的装入模块,以后不再拆开的链接方---式;
b. 装入时动态链接是指目标模块在装入内存时,边装入边链接的链接方式;
操作系统课后习题
第一章:
1. 设计现代OS 的主要目标是什么?
方便性,有效性,可扩充性和开放性.
2. 何谓脱机I/O 和联机I/O?
a. 脱机输入输出方式(Off-Line I/O)是为了解决人机矛盾及CPU 和I/O 设备之间速度不匹配而提出的.它减少了CPU 的空闲等待时间,提高了I/O 速度.具体内容是将用户程序和数据在一台外围机的控制下,预先从低速输入设备输入到磁带上,当CPU 需要这些程序和数据时,在直接从磁带机高速输入到内存,从而大大加快了程序的输入过程,减少了CPU 等待输入的时间,这就是脱机输入技术;当程序运行完毕或告一段落,CPU 需要输出时,无需直接把计算结果送至低速输出设备,而是高速把结果输出到磁带上,然后在外围机的控制下,把磁带上的计算结果由相应的输出设备输出,这就是脱机输出技术.
6. 设备管理有哪些主要功能?其主要任务是什么?
计算机操作系统进程管理练习题(1)
一、选择题1.在进程管理中,当时,进程从阻塞状态变为就绪状态。
A.进程被进程调度程序选中B.等待某一事件C.等待的事件发生D.时间片用完2.分配到必要的资源并获得处理机时的进程状态是。
A.就绪状态 B.执行状态 C.阻塞状态 D.撤消状态3.P、V操作是。
A.两条低级进程通信原语B.两组不同的机器指令C.两条系统调用命令D.两条高级进程通信原语4.设系统中有n(n>2)个进程,且当前不在执行进程调度程序,试考虑下述4种情况,不可能发生的情况是。
A.没有运行进程,有2个就绪进程,n个进程处于等待状态。
B.有1个运行进程,没有就绪进程,n-1个进程处于等待状态。
C.有1个运行进程,有1个就绪进程,n-2个进程处理等待状态。
D.有1个运行进程,n-1个就绪进程,没有进程处于等待状态。
5.若P、V操作的信号量S初值为2,当前值为-1,则表示有等待进程。
A. 0个B. 1个C. 2个D. 3个6.进程的三个基本状态在一定条件下可以相互转化,进程由就绪状态变为运行状态的条件是。
A.时间片用完B.等待某事件发生C.等待的某事件已发生D.被进程调度程序选中7.进程的三个基本状态在一定条件下可以相互转化,进程由运行状态变为阻塞状态的条件是。
A.时间片用完B.等待某事件发生C.等待的某事件已发生D.被进程调度程序选中8.下列的进程状态变化中,变化是不可能发生的。
A.运行→就绪B.就绪→运行C.等待→运行D.等待→就绪9.一个运行的进程用完了分配给它的时间片后,它的状态变为。
A.就绪B.等待C.运行D.由用户自己确定10.用V操作唤醒一个等待进程时,被唤醒进程的状态变为。
A.等待B.就绪C.运行D.完成11.操作系统通过对进程进行管理。
A. JCBB. PCBC. DCTD. CHCT 12.用P、V操作可以解决互斥问题。
A. 一切B. 某些C. 正确D. 错误13.一个进程被唤醒意味着。
A. 该进程重新占有了CPUB. 它的优先权变为最大C. 其PCB移至等待队列队首D. 进程变为就绪状态14.多道程序环境下,操作系统分配资源以为基本单位。
操作系统第二章课后答案
第二章进程管理2、试画出下面4条语句的前趋图:S2: b:=z+1;S3: c:=a-b;S4: w:=c+1;3、程序在并发执行时,由于它们共享系统资源,以及为完成同一项任务而相互合作,致使在这些并发执行的进程之间,形成了相互制约的关系,从而也就使得进程在执行期间出现间断性。
4、程序并发执行时为什么会失去封闭性与可再现性?因为程序并发执行时,就是多个程序共享系统中的各种资源,因而这些资源的状态就是由多个程序来改变,致使程序的运行失去了封闭性。
而程序一旦失去了封闭性也会导致其再失去可再现性。
5、在操作系统中为什么要引入进程概念?它会产生什么样的影响?为了使程序在多道程序环境下能并发执行,并能对并发执行的程序加以控制与描述,从而在操作系统中引入了进程概念。
影响: 使程序的并发执行得以实行。
6、试从动态性,并发性与独立性上比较进程与程序?a、动态性就是进程最基本的特性,可表现为由创建而产生,由调度而执行,因得不到资源而暂停执行,以及由撤销而消亡,因而进程由一定的生命期;而程序只就是一组有序指令的集合,就是静态实体。
b、并发性就是进程的重要特征,同时也就是OS的重要特征。
引入进程的目的正就是为了使其程序能与其它建立了进程的程序并发执行,而程序本身就是不能并发执行的。
c、独立性就是指进程实体就是一个能独立运行的基本单位,同时也就是系统中独立获得资源与独立调度的基本单位。
而对于未建立任何进程的程序,都不能作为一个独立的单位来运行。
7、试说明PCB的作用?为什么说PCB就是进程存在的唯一标志?a、PCB就是进程实体的一部分,就是操作系统中最重要的记录型数据结构。
PCB中记录了操作系统所需的用于描述进程情况及控制进程运行所需的全部信息。
因而它的作用就是使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能与其它进程并发执行的进程。
b、在进程的整个生命周期中,系统总就是通过其PCB对进程进行控制,系统就是根据进程的PCB而不就是任何别的什么而感知到该进程的存在的,所以说,PCB就是进程存在的唯一标志。
操作系统原理-第三章进程管理习题(1)
第三章进程管理习题一. 单选题1. UNIX操作系统的进程控制块中常驻内存的是()。
A.proc结构B.proc结构和核心栈C.ppda区D.proc结构和user结构2. 当()时,进程从执行状态转变为就绪状态。
A.进程被调度程序选中B.时间片到C.等待某一事件D.等待的事件发生3.在进程状态转换时,下列()转换是不可能发生的。
A.就绪态→运行态B.运行态→就绪态C.运行态→阻塞态D.阻塞态→运行态4.下列各项工作步骤中,()不是创建进程所必需的步骤。
A.建立一个PCBB.作业调度程序为进程分配CPUC.为进程分配内存等资源D. 将PCB链入进程就绪队列5.下列关于进程的叙述中,正确的是()。
A.进程通过进程调度程序而获得CPU。
B.优先级是进行进程调度的重要依据,一旦确定不能改变。
C.在单CPU系统中,任一时刻都有1个进程处于运行状态。
D.进程申请CPU得不到满足时,其状态变为等待状态。
6.从资源管理的角度看,进程调度属于()。
A.I/O管理B.文件管理C.处理机管理D.存储器管理7.下列有可能导致一进程从运行变为就绪的事件是()。
A.一次I/O操作结束B.运行进程需作I/O操作C.运行进程结束D.出现了比现运行进程优先权更高的进程8.一个进程释放一种资源将有可能导致一个或几个进程()。
A.由就绪变运行B.由运行变就绪C.由阻塞变运行D.由阻塞变就绪9.一次I/O操作的结束,有可能导致()。
A.一个进程由睡眠变就绪B.几个进程由睡眠变就绪C.一个进程由睡眠变运行D.几个进程由睡眠变运行10.当一个进程从CPU上退下来时,它的状态应变为()。
A.静止就绪B. 活动就绪C. 静止睡眠D. 活动睡眠11.为使进程由活动就绪变为静止就绪,应利用()原语?** B. ACTIVE C. BLOCK D. WAKEUP12.在下面的叙述中,不正确的是()。
A.一个进程可创建一个或多个线程B.一个线程可创建一个或多个线程C.一个线程可创建一个或多个进程D.一个进程可创建一个或多个进程13. 若系统中只有用户级线程,则处理机调度单位是()。
2023年操作系统笔试题及答案
操作系统笔试题及答案241. 在提供虚拟存储旳系统中, 顾客旳逻辑地址空间重要受( )旳限制。
A.内存空闲块旳大小B. 外存旳大小C. 计算机编址范围D. 页表大小答案: C242.在分时系统中, 时间片一定, ( ), 响应时间越长。
A.内存越多B. 顾客数越多C.内存越少D. 顾客数越少答案: B243.正在运行旳进程在信号量S上做P操作后, 当S<0时, 进程进入信号量旳( ) A. 等待队列 B. 提交队列 C.后备队列 D. 就绪队列答案: A244.在多道程序系统中, ( )作用是从就绪状态中挑选一种进程投人运行。
A.作业调度B. 互换调度C.进程调度D. SPOOLING调度答案: C245.多道系统环境下, 操作系统分派资源是以( )为基本单位。
A.作业B. 指令C. 程序D. 进程答案: D246.在进程资源图中( )是发生死锁旳必要条件。
A. 互斥B.可剥夺件C.环路D. 同步答案: C247.在页式管理中, 页表旳始址寄存在( )A. 内存中B.存储页面表中C.联想存储器中D.寄存器中答案: D248.在段页式存储管理中, 其虚拟地址空间是( )A.一维B.二维C.三维D. 层次答案: B249.支持多道程序设计旳操作系统在运行过程中, 不停地选择新进程运行来实现CPU旳共享, 但其中( )不是引起操作系统选择新进程旳直接原因。
A.运行进程旳时间片用完B. 运行进程出错C.运行进程要等待某一事件发生D.有新进程进入就绪状态.答案: D250. 在下列说法中, ( )是错误旳。
A.若进程A和进程B在临界段上互斥, 那么当进程A处在该临界段时, 它不能被进程B中断B.虚拟存储管理中采用对换(swapping)方略后, 顾客进程可使用旳存储空间似乎增长了C.虚拟存储管理中旳抖动(thrashing)现象是指页面置换(page replacement)时用于换页旳时间远多于执行程序旳时间D. 进程可以由程序、数据和进程控制块(PCB)描述答案: A251. 寄存在磁盘上旳文献( )A.既可随机访问, 又可次序访问 B.只能随机访问C.只能次序访问D. 必须通过操作系统访问答案: A252. ( )不是操作系统关怀旳重要问题。
OS1操作系统概论
40
20
10
10
(b)
t 190 ms
通道2 通道1
C B
30 A
40
40
30
20
20
40
20
10
10
(c)
t 180 ms
通道2 通道1
C B
30 A
1
40
40
30
20
40
20
10
10
11 1 1 (d)
20 1
t 186 ms
若采用多道方式运行(多个通道)这 三道程序,其程序运行时间关系如图 1.3(c)所示,总运行时间为:
件
第1章 计算机操作系统概论
本章重点
了解操作系统的结构:了解操作系统的地位 什么是操作系统 现代操作系统的特征、功能、类型 基本概念:批处理、多道程序设计、作业、任务
、进程和线程、接口、虚拟存储、文件。
1.1 操作系统的形成与发展 1.2 操作系统的基本概念 1.3 操作系统的结构 1.4 操作系统的硬件环境 1.5 当前主流操作系统简介
卡 片 阅 读 机
IBM 1401
早期批处理系统
磁带机
机印打
IBM 7094
IBM 1401
输入磁带
输出磁带
Operating System2 4
单道批处理系统的处理流程:
1.1.4 多道程序设计技术
过去,内存中只能存放一个用户作业在其中运 行。那么CPU等待传输数据的过程中,仍然因无工 作可做而处于空闲状态。
我们也可以从以下3个方面来理解操作系统的概念
(1) 从用户使用角度来看: 既可以直接用命令控制 ,也可以通过系统编程调用。
操作系统进程管理
Process Management
处理机管理是操作系统的基本管理功能之一,它所关心的是处理机的 分配问题。也就是说把CPU(中央处理机)的使用权分给某个程序。
通常把正准备进入内存的程序称为作业,当这个作业进入内 存后我们把它称为进程。处理机管理分为作业管理和进程管 理两个阶段去实现处理机的分配,常常又把直接实行处理机 时间分配的进程调度工作作为处理机管理的主要内容。
3、系统进程在管态下活动,而用户进程则在用户态 (目态)下活动。
另一种分类:计算进程,I/O进程等 注意:在UNIX系统中没有这样对进程进行分类。
动。 (4)在进程调度中,系统进程的优先级高于用
户进程。
2.5 进程的类型与区别
系统进程与用户进程的区别:
1、系统进程被分配一个初始的资源集合,这些资源 可以为它独占,也能以最高优先权的资格使用。用 户进程通过系统服务请求的手段竞争使用系统资源;
2、用户进程不能直接做I/O操作,而系统进程可以 做显示的、直接的I/O操作。
2.3进程的特征
5)结构特征:为能正确的执行并发,为每一个进程配置
了一个数据结构,称为进程控制块(PCB)。则一个进 程实体就由数据段、程序段、PCB三部分构成。
• 进程实体 = 数据段+程序段+PCB
PCB
私有 数据块
程 序 段
进程的结构
• 程序和进程不一定具有一一对应的关系。
2.4 与程序的区别
2、进程是一个独立的运行单位,能与其它进程并行(并 发)活动。而程序则不是。
3、进程是竞争计算机系统有限资源的基本单位,也是进 行处理机调度的基本单位。
4、一个程序可以作为多个进程的运行程序,一个进程也 可以运行多个程序。
操作系统实验二(进程管理)
操作系统进程管理实验实验题目:(1)进程的创建编写一段程序,使用系统调用fork( )创建两个子进程。
当此程序运行时,在系统中有一个父进程和两个子进程活动。
让每一个进程在屏幕上显示一个字符:父进程显示字符“a”;子进程分别显示字符“b”和字符“c”。
试观察记录屏幕上的显示结果,并分析原因。
(2)进程的控制修改已编写的程序,将每个进程输出一个字符改为每个进程输出一句话,在观察程序执行时屏幕上出现的现象,并分析原因。
(3)编制一段程序,使其实现进程的软中断通信。
要求:使用系统调用fork( )创建两个子进程,再用系统调用signal( )让父进程捕捉键盘上来的中断信号(即按Del键);当捕捉到中断信号后,父进程调用系统调用kill( )向两个子进程发出信号,子进程捕捉到信号后分别输出下列信息后终止: Child process 1 is killed by parent! Child process 2 is killed by parent! 父进程等待两个子进程终止后,输出如下的信息后终止: Parent process is killed! 在上面的程序中增加语句signal(SIGINT, SIG_IGN)和signal(SIGQUIT, SIG_IGN),观察执行结果,并分析原因。
(4)进程的管道通信编制一段程序,实现进程的管道通信。
使用系统调用pipe( )建立一条管道线;两个进程P1和P2分别向管道各写一句话: Child 1 is sending a message! Child 2 is sending a message! 而父进程则从管道中读出来自于两个子进程的信息,显示在屏幕上。
要求父进程先接收子进程P1发来的消息,然后再接收子进程P2发来的消息。
实验源程序及报告:(1)、进程的创建#include <stdio.h>int main(int argc, char *argv[]){int pid1,pid2; /*fork first child process*/if ( ( pid1=fork() ) < 0 ){printf( "ProcessCreate Failed!");exit(-1);}if ( ( pid1=fork() ) == 0 ){printf( "b\n" );}/*fork second child process*/if ( ( pid2=fork() ) < 0 ){printf( "ProcessCreate Failed!"); exit(-1);}if ( ( pid2=fork() ) == 0 ){printf( "c\n" );}/*parent process*/else{wait(NULL);printf( "a\n" );exit(0);}return 0;}(2)、进程的控制#include <stdio.h>int main(int argc, char *argv[]){ int pid1,pid2;/*fork first child process*/if ( ( pid1=fork() ) < 0 ){printf( "ProcessCreate Failed!");exit(-1);}if ( ( pid1=fork() ) == 0 ){printf( "This is my Unix OS program!\n" ); }/*fork second child process*/if ( ( pid2=fork() ) < 0 ){printf( "ProcessCreate Failed!");exit(-1);}if ( ( pid2=fork() ) == 0 ){printf( "This is the second Child process!\n" ); }/*parent process*/else{wait(NULL);printf( "This is the Parent process\n" );exit(0);}return 0;}(3)编制一段程序,使其实现进程的软中断通信。
L2(操作系统:进程管理1)
应用程序 (系统与用户) 库函数调用 系统库
内核调用
OS 内核 机器指令
硬件
Part 1: Operating System
Lecture2.操作系统引论
I. 硬件接口
a. 中断Interrupt : 外部设备向CPU发出的信号. 中断处理
b.
外部硬件
OS
应用程序 中断处 理 中断t 信号
IV.
常见实时操作系统: Linux, WinCE
⑤
多处理机系统(Multiprocessor Systems) 网格运算、分布式处理等。
Part 1: Operating System
Lecture2.操作系统引论 5. 操作系统特征
① 并发性★
在同一段时间内,同时存在许多活动
② 共享性★
多个程序共享系统资源
③ 单道程序系统下的程序执行具有顺序性、资源独占性(封 闭性)、确定性(可再现性)特点;多道程序系统中程序 执行出现新特点:相互制约性、随机性、资源共享、与速 度有关性
2.
进程管理
① 进程概念 A. 定义: 可以并发执行的程序或程序段在一个数据集合上
的执行过程。 包括程序, 数据,进程控制块(PCB). B. 程序与进程的区别
GUI:.用户图形界面
Windows 各种窗口,按钮,浏览器
Part 1: Operating System
Lecture2.操作系统引论
③ 虚拟机结构
虚拟机结构在裸机上扩展了一层软件,向上提供了若干台虚拟机。 它包含有核心态/用户态、I/O功能、中断以及真实硬件的全部内容。 实际上它是一个具有比裸机更方便、灵活的计算机。
Lecture2.操作系统引论
计算机操作系统课件02-1进程的基本概念
(4) 静止阻塞→活动阻塞。处于Blockeds状态的进程,若用激 活原语Active激活后,该进程将转变为Blockeda状态。
4.创建状态和终止状态
1) 创建状态
创建一个进程一般要通过两个步骤:首先,为一个新进程创 建PCB,并填写必要的管理信息;其次,把该进程转入就绪状 态并插入就绪队列之中。
例如,在进行计算时,总须先输入用户的程序和数据,然后 进行计算,最后才能打印计算结果。
用结点(Node,用圆圈表示) 代表各程序段的操作,其中,I代 表输入操作,C代表计算操作,P为打印操作;另外,用箭头 指示操作的先后次序。
I1
C1
P1
I2
C2
P2
S1
S2
S3
(a) 程序的顺序执行
(b) 三条语句的顺序执行
→={(Pi,Pj)|Pi must complete before Pj may start} 如果(Pi,Pj)∈→,可写成Pi→Pj,称Pi是Pj的直接前趋,而称 Pj是Pi的直接后继 在前趋图中,把没有前趋的结点称为初始结点(Initial Node), 把没有后继的结点称为终止结点(Final Node)。
当用挂起原语Suspend将该进程挂起后,该进程便转变为静止 就绪状态,表示为Readys,处于Readys状态的进程不再被调度 执行。
请求
释放
活动 阻塞
I/O
调度
活动 就绪
激活
挂起
执行
激活 挂起
静止 阻塞
释放
挂起
静止 就绪
图 2-6 具有挂起状态的进程状态图
计算机操作系统(第3版)课后习题答案(完整版)
4
1 1.试说明引起进程创建的主要事件。 答:引起进程创建的主要事件有:用户登录、作业调度、提供服务、应用请求。 1 2.试说明引起进程被撤销的主要事件。 答:引起进程被撤销的主要事件有:正常结束、异常结束(越界错误、保护错、非法指令、 特权指令错、运行超时、等待超时、算术运算错、I/O 故障)、外界干预(操作员或操作 系 统干预、父进程请求、父进程终止)。 1 3.在创建一个进程时所要完成的主要工作是什么? 答: (1)OS 发现请求创建新进程事件后,调用进程创建原语Creat(); (2)申请空白PCB; (3)为新进程分配资源; (4)初始化进程控制块; (5)将新进程插入就绪队列. 1 4.在撤销一个进程时所要完成的主要工作是什么? 答: (1)根据被终止进程标识符,从PCB 集中检索出进程PCB,读出该进程状态。 (2)若被终止进程处于执行状态,立即终止该进程的执行,置调度标志真,指示该进程被 终止后重新调度。 (3)若该进程还有子进程,应将所有子孙进程终止,以防它们成为不可控进程。 (4)将被终止进程拥有的全部资源,归还给父进程,或归还给系统。 (5)将被终止进程PCB 从所在队列或列表中移出,等待其它程序搜集信息。 1 5.试说明引起进程阻塞或被唤醒的主要事件是什么? 答:a. 请求系统服务;b. 启动某种操作;c. 新数据尚未到达;d. 无新工作可做. 1 6.进程在运行时存在哪两种形式的制约?并举例说明之。 答: (1)间接相互制约关系。举例:有两进程A 和B,如果A 提出打印请求,系统已把唯一的 一台打印机分配给了进程B,则进程A 只能阻塞;一旦B 释放打印机,A 才由阻塞改为就 绪。 (2)直接相互制约关系。举例:有输入进程A 通过单缓冲向进程B 提供数据。当缓冲空时, 计算进程因不能获得所需数据而阻塞,当进程A 把数据输入缓冲区后,便唤醒进程B;反 之,当缓冲区已满时,进程A 因没有缓冲区放数据而阻塞,进程B 将缓冲区数据取走后便 唤醒A。 1 7.为什么进程在进入临界区之前应先执行 “进入区”代码?而在退出前又要执行 “退出 区”代码? 答:为了实现多个进程对临界资源的互斥访问,必须在临界区前面增加一段用于检查欲访问 的临界资源是否正被访问的代码,如果未被访问,该进程便可进入临界区对资源进行访问, 并设置正被访问标志,如果正被访问,则本进程不能进入临界区,实现这一功能的代码为" 进入区"代码;在退出临界区后,必须执行" 退出区"代码,用于恢复未被访问标志,使其它 进程能再访问此临界资源。 18. 同步机构应遵循哪些基本准则?为什么? 答:同步机构应遵循的基本准则是:空闲让进、忙则等待、有限等待、让权等待 原因:为实现进程互斥进入自己的临界区。 19. 试从物理概念上说明记录型信号量wait 和signal。
OS第二章习题(1)
第二章1. ____优先权是在创建进程时确定的,确定之后在整个进程运行期间不再改变。
动态先来先服务静态短作业2.2. 下列进程状态变化中,______变化是不可能发生的。
运行—>等待等待—>运行运行—>就绪等待—>就绪3.3. 当_____时,进程从运行状态变为就绪状态。
等待某一事件进程被调度程序选中时间片到等待的事件发生4.4. 进程管理中,当_____,进程从阻塞态变成就绪态。
等待的事件发生等待一个事件时间片用完进程被进程调度程序选中5.5. 下面对进程的描述中,错误的是____。
进程是动态的概念进程是指令的集合进程是有生命周期的进程执行需要处理机6.6. 下面所述步骤中,_____不是创建进程所必需的。
建立一个进程控制块由调度程序为进程分配CPU将进程控制块链入就绪队列为进程分配内存7.7. 多道程序环境下,操作系统分配资源以____为基本单位。
指令作业进程程序8.8. 下述哪一个选项体现了原语的主要特点_______。
异步性共享性不可分割性9.9. 关于内核级线程,以下描述不正确的是______。
可以将一个进程的多个线程分派到多个处理器,能够发挥多处理器并行工作的优势控制权从一个线程传送到另一个线程时不需要用户态-内核态-用户态的模式切换建立和维护线程的数据结构及保存每个线程的入口内核可以将处理器调度直接分配给某个内核级线程10.10. 一个进程被唤醒意味着____。
进程变为就绪状态其PCB移至等待队列队首该进程重新占有了CPU它的优先权变为最大11.11. 在引入线程的操作系统中,资源分配的基本单位是____。
程序线程作业12.12. 在下述关于父进程和子进程的叙述中,正确的是_____。
父进程和子进程可以并发执行父进程创建了子进程,因此父进程执行完了,子进程才能运行撤销父进程时,应该同时撤销子进程撤销子进程时,应该同时撤销父进程13.13. 对进程的管理和控制使用_______。
计算机操作系统_刘乃琦_进程管理
2.1.2前趋图定义 2.1.2前趋图定义
有向无循环图 表示方式: 表示方式: )1( ٭p1--->p2 p1----->p2 ({=>---)2( ٭p1,p2)| p1 必须在p2开始前完成} --->={(p1,p2)| 必须在p2开始前完成} p2开始前完成 P27) (图2-2 P27) 节点表示:一条语句,一个程序段,一进程。 节点表示:一条语句,一个程序段,一进程。 P1 P1 P1 P1
3.PCB的组织 3.PCB的组织 ٭索引(p34图2-8) 索引(p34 (p34图
PCB1 PCB2
执行指针
PCB3 PCB4 PCB5
就绪表指针
PCB6 PCB7
阻塞表指针
进程管理
补充
PCB和进程的代码数据放在一起吗 PCB和进程的代码数据放在一起吗? 和进程的代码数据放在一起吗? ٭系统态和用户态 ٭系统空间和用户空间 系统调用和普通调用的区别? 系统调用和普通调用的区别? ٭系统调用会引起从用户态进入核心态
进程管理
2.1.4进程的特征和状态 2.1.4进程的特征和状态(4) 进程的特征和状态(4)
3. 挂起状态(被换出内存的状态) 挂起状态(被换出内存的状态) ٭引入原因 ▪ 终端用户请求 ▪ 父进程请求 ▪ 负荷调节需要 ▪ 操作系统需要 ٭进程状态的转换(图2-6) 进程状态的转换( ▪ 活动就绪 静止就绪 ▪ 活动阻塞 静止阻塞 ▪ 静止就绪 活动就绪 ▪ 静止阻塞 活动阻塞
进程管理
2.2.2 进程的终止(2) 进程的终止(2)
二、进程的终止过程 )1( ٭检查进程状态; 检查进程状态; )2( ٭执行态――>中止,且置调度标志为真。 执行态―― 中止,且置调度标志为真。 ――> )3( ٭有无子孙需终止。 有无子孙需终止。 )4( ٭归还资源给其父进程或系统。 归还资源给其父进程或系统。 )5( ٭从PCB队列中移出PCB. PCB队列中移出 队列中移出PCB.
《操作系统》试题及答案
《操作系统》试题及答案一、选择题(每题2分,共20分)1. 下列哪个操作系统不是分时系统?A. UnixB. LinuxC. Windows 98D. Windows Server答案:C2. 下列关于进程的说法,错误的是:A. 进程是系统进行资源分配和调度的一个独立单位B. 进程和线程是同一个概念C. 进程具有并发性、异步性和独立性D. 进程可以拥有多个线程答案:B3. 在操作系统中,下列哪个调度算法可能导致“饥饿”现象?A. 先来先服务(FCFS)B. 短作业优先(SJF)C. 最高响应比优先(HRRN)D. 时间片轮转(RR)答案:A4. 下列哪种文件系统不支持磁盘碎片整理?A. FAT16B. FAT32C. NTFSD. ReiserFS答案:A5. 下列关于虚拟存储的说法,错误的是:A. 虚拟存储可以扩大物理内存的容量B. 虚拟存储可以提高内存的利用率C. 虚拟存储可以降低程序的执行速度D. 虚拟存储可以实现程序的透明加载答案:C6. 下列哪种磁盘调度算法最适合磁盘I/O请求频繁的业务场景?A. FCFSB. SSTFC.SCAND. C-SCAN答案:B7. 下列关于线程的说法,正确的是:A. 线程是进程的组成部分,一个进程可以有多个线程B. 线程和进程具有相同的生命周期C. 线程之间的通信比进程之间的通信简单D. 线程可以独立执行程序答案:A8. 下列哪种操作系统用于嵌入式系统?A. LinuxB. Windows CEC. UnixD. Mac OS答案:B9. 下列关于中断的说法,错误的是:A. 中断是计算机系统对突发事件的处理机制B. 中断可以由硬件或软件触发C. 中断处理程序可以抢占CPU的执行权D. 中断处理程序可以无限循环执行答案:D10. 在操作系统中,下列哪个功能不属于进程管理?A. 进程创建与撤销B. 进程调度C. 进程同步与互斥D. 文件系统管理答案:D二、填空题(每题2分,共20分)1. 操作系统的主要功能包括进程管理、存储管理、文件管理和________管理。
操作系统第2章(进程和线程的管理习题及解答)
第2章进程和线程的管理习题及解答例题解析例2.2.1 试说明进程和程序之间的区别和联系。
解进程和程序是既有区别又有联系的两个概念。
(1)进程是动态的,程序是静态的。
程序是一组有序的指令集合,是一个静态的概念;进程则是程序及其数据在计算机上的一次执行,是一个动态的集合。
离开了程序,进程就失去了存在的意义,但同一程序在计算机上的每次运行将构成不同的进程。
程序可看作是电影的胶片,进程可以看作电影院放电影的过程。
(2)一个进程可以执行多个程序,如同一个电影院的一场电影可放映多部影片。
(3)一个程序可被多个进程执行,如同多个影院同时利用一个电影的胶片放映同一部电影。
(4)程序可以长期保存,进程只能存在于一段时间。
程序是永久存在的,而进程有从被创建到消亡的生命周期。
例2.2.2 举例说明多道程序系统失去了封闭性和再现性。
解例如,有两个循环程序A和B,共享一个变量N。
程序A每执行一次时,都要做N:=N+1操作;程序B则每执行一次时,都要执行print(N)操作,然后再将N的值置成“0”。
程序A和B在多道程序系统中同时运行。
假定某时刻变量N的值为n,可能出现下述三种情况:(1)N:=N+1 在print(N)和N:=0之前,此时得到N值变化过程为n+1、n+1、0;(2)N:=N+1 在print(N)和N:=0之后,此时得到N值变化过程为n 、 0 、1;(3)N:=N+1 在print(N)之后和N:=0之前,此时得到N值变化过程为n、n+1、0。
所以,在A、B程序多次执行过程中,虽然其每次执行时的环境和初始条件都相同,但每次得到的结果却不一定相同。
例 2.2.3 为什么将进程划分成执行、就绪和阻塞三个基本状态?解根据多道程序执行的特点,进程的运行是走走停停的。
因此进程的初级状态应该是执行和等待状态。
处于执行状态的进程占用处理机执行程序,处于等待状态的进程正在等待处理机或者等待其它某种事件的发生。
但是,当处理机空闲时,并不是所有处于等待状态的进程都能放到处理机上执行,有的进程即使分配给它处理机,它也不能执行,因为它的执行的条件没有得到满足。
(完整版)操作系统第二章课后答案
第二章进程管理2. 试画出下面4条语句的前趋图:S2: b:=z+1;S3: c:=a-b;S4: w:=c+1;3.程序在并发执行时,由于它们共享系统资源,以及为完成同一项任务而相互合作,致使在这些并发执行的进程之间,形成了相互制约的关系,从而也就使得进程在执行期间出现间断性。
4. 程序并发执行时为什么会失去封闭性和可再现性?因为程序并发执行时,是多个程序共享系统中的各种资源,因而这些资源的状态是由多个程序来改变,致使程序的运行失去了封闭性。
而程序一旦失去了封闭性也会导致其再失去可再现性。
5. 在操作系统中为什么要引入进程概念?它会产生什么样的影响?为了使程序在多道程序环境下能并发执行,并能对并发执行的程序加以控制和描述,从而在操作系统中引入了进程概念。
影响: 使程序的并发执行得以实行。
6. 试从动态性,并发性和独立性上比较进程和程序?a. 动态性是进程最基本的特性,可表现为由创建而产生,由调度而执行,因得不到资源而暂停执行,以及由撤销而消亡,因而进程由一定的生命期;而程序只是一组有序指令的集合,是静态实体。
b. 并发性是进程的重要特征,同时也是OS的重要特征。
引入进程的目的正是为了使其程序能和其它建立了进程的程序并发执行,而程序本身是不能并发执行的。
c. 独立性是指进程实体是一个能独立运行的基本单位,同时也是系统中独立获得资源和独立调度的基本单位。
而对于未建立任何进程的程序,都不能作为一个独立的单位来运行。
7. 试说明PCB的作用?为什么说PCB是进程存在的唯一标志?a. PCB是进程实体的一部分,是操作系统中最重要的记录型数据结构。
PCB中记录了操作系统所需的用于描述进程情况及控制进程运行所需的全部信息。
因而它的作用是使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能和其它进程并发执行的进程。
b. 在进程的整个生命周期中,系统总是通过其PCB对进程进行控制,系统是根据进程的PCB而不是任何别的什么而感知到该进程的存在的,所以说,PCB是进程存在的唯一标志。
计算机操作系统
用户进程
进程的三种基本状态
◆就绪(Ready)状态 ◆阻塞(Blocked)状态 ◆执行状态
进程的组成
◆ PCB结构 ◆程序段 ◆数据段
PCB
┇ ┇ 数据段 程序段
┇
┇
进程例题
☻设有2个程序,程序C是打印工资报表的程序,程 序D是计算十亿以内所有素数并显示最后结果程序。 ☻在不支持进程运行环境的OS下运行情况如何?
第二章 进程管理
李学敏 2012年3月23日
2.1 进程的基本概念 2.2 进程控制 2.3 进程同步 2.4 经典进程的同步 问题 2.5 进程通信 2.6 线程
回顾什么是进程 ◆程序的1次执行就是1个进程
◆进程具有如下特性:
动态性 并发性 独立性 异步性
进程是动态的,而程序是静态的 1个程序可以对应多个进程,而且 1 个进程也可能会执行多个程序。 系统进程
2.2.2 进程的终止
1.引起进程终止的事件
正常结束 异常结束
越界错误、保护错、非法指令、特权指令错、运行超 时、等待超时、算术运算错、I/O故障
外界干预
操作员或操作系统干预、父进程请求、父进程终止
进程完成了任务,或者在执行过程发生异常,这 时系统就要终止当前进程的执行。终止进程的执 行,可用进程终止原语来实现。
2.2 进程控制
进程控制:对系统中的所有进程实施管理, 一般由OS内核的原语来实现。 原语是一种特殊的系统功能调用,它可以 完成一个特定的功能,其特点是原语执行 时不可被中断,原语常驻内存,且在系统 状态下运行。
处理机两种状态: • 系统状态(管态、核心状态):具 有较高特权,能执行一切指令,访问 所有寄存器和存储区。内核运行在管 态。 • 用户状态(目态):只能执行规定 的指令,访问规定的寄存器和存储区。 用户程序运行在目态。 OS内核:运行在系统态的,包括对 进程操作和控制的最基本的原语和数 据结构。
OS2(答案)
进程管理一、单项选择题1、顺序程序和并发程序的执行相比,()。
A.基本相同B. 有点不同C.并发程序执行总体上执行时间快D.顺序程序执行总体上执行时间快2、在单一处理机上,将执行时间有重叠的几个程序称为()。
A.顺序程序B. 多道程序C.并发程序D. 并行程序3、进程和程序的本质区别是()。
A.存储在内存和外存B.顺序和非顺序执行机器指令C.分时使用和独占使用计算机资源D.动态和静态特征4、在下列特性中,不是进程的特性的是()。
A. 异步性B. 并发性C. 静态性D. 动态性5、各进程向前推进的速度是不可预知,体现出“走走停停”的特征,称为进程的()。
A.动态性B.并发性C.调度性D.异步性6、在单处理机系统中,处于运行状态的进程()。
A.只有一个B. 可以有多个C.不能被挂起D. 必须在执行完后才能被撤下7、下列进程状态的转换中,不正确的是()。
A. 就绪→运行B. 运行→就绪C. 就绪→阻塞D. 阻塞→就绪8、已经获得除()以外的所有运行所需资源的进程处于就绪状态。
A.存储器B. 打印机C. CPUD. 磁盘空间9、一个进程被唤醒意味着()。
A.该进程重新占有了CPUB.进程状态变为就绪C.它的优先权变为最大D.其PCB移至就绪队列的队首10、进程从运行状态变为阻塞状态的原因是()。
A.输入或输出事件发生B.时间片到C.输入或输出事件完成D.某个进程被唤醒11、为了描述进程的动态变化过程,采用了一个与进程相联系的(),根据它而感知进程的存在。
A.进程状态字B. 进程优先数C.进程控制块D. 进程起始地址12、操作系统中有一组常称为特殊系统调用的程序,它不能被系统中断,在操作系统中称为()。
A.初始化程序B. 原语C.子程序D. 控制模块13、进程间的基本关系为()。
A.相互独立与相互制约B.同步与互斥C.并行执行与资源共享D. 信息传递与信息缓冲14、两个进程合作完成一个任务,在并发执行中,一个进程要等待其合作伙伴发来信息,或者建立某个条件后再向前执行,这种关系是进程间的()关系。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2.1 进程的基本概念
2.2 进程控制
2.3 进程同步
2.4 经典进程的同步问题
2.5 进程通信
2.6 线程
开 始
本章学习目标
在多道程序环境下,程序不能独立运行。作为资源分配和 独立运行的基本单位是进程。操作系统所有的特征都是基 于进程而体现的。所以,本章的学习目标为: 理解进程的概念,掌握进程在系统中的表示方法 理解进程的创建及其状态变化 理解进程切换过程,进程调度的原因及调度切换时机 理解进程同步的实现方法;掌握信号量机制及使用它解 决进程同步问题的方法。 掌握进程通信的机制(共享存储系统;消息传递系统; 管道通信)
返回本章首页 掌握线程的基本概念,了解线程的控制方法及常见的两 类线程
2.1 进程的基本概念
2.1.1 程序的顺序执行及其特征
2.1.2 前趋图
2.1.3 程序的并发执行及其特征
2.1.4 进程的特征与状态
2.1.5 进程控制块
返回本章首页
2.1.1 程序的顺序执行及其特性
由于各类软件的出现及日益复杂化,使得 程序设计的概念和方法有了很大的发展, 在单道程序工作环境中,我们把一个“程 序”理解为“一个在时间上按严格次序前 后相继的操作序列”。
活动阻塞→静止阻塞 当进程处于尚未挂起的阻 塞状态时,称为处于活动阻塞状态,表示为 Blockeda。当用Suspend原语将它挂起后,进程 便转换为静止阻塞,表示为Blockeds。处于该状 态的进程在期待的事件出现后,将从静止阻塞变 为静止就绪。 静止就绪→活动就绪 处于Readys状态的进程, 若用激活原语Active激活后,该进程将转变为 Readya状态。 静止阻塞→活动阻塞 处于Blockeds状态的进程, 若用激活原语Active激活后,进程将转变为 Blockeda状态。
进程的特征
•结构特征 为使程序能并发执行,应为之配置一进程 控制块,即PCB(Process Control Block)。 进程实体由程序段、相关的数据段和PCB三 部分构成。创建进程实质上就是创建进程实 体中的PCB,撤销进程实质上就是撤销进程 的PCB。
进程的特征
•动态性 进程有一定的生命期。动态性表现在:进程由创 建而产生,由调度而执行,由撤销而消亡。 •并发性 指多个进程实体同存于内存中,且能在一段时 间内同时运行。 •独立性 指的是在传统的没有线程的OS中,进程是一个 能独立运行、独立分配资源和独立接受调度的基本 单位。 •异步性
一般来说,输入程序在输入第i+1个程序时,计 算程序可能正在对第i个程序进行计算,而打印程 序正在打印第i-1个程序的计算结果。
I1 I2 I3 I4
C1
C2
C3
C4
P1
P2
P3
P4
该例中存在下述前趋关系:
Ii→Ci ,Ii→Ii+1 , Ci→Pi, Ci→Ci+1, Pi→Pi+1
而Ii+1和Ci及Pi-1是重迭的,亦即Ii+1和Ci及Pi-1可以 并发执行。
失去可再现性的例子2
一飞机订票系统,两个终端,运行T1、T2进程
T1 : T2:
...
Read(x); if x>=1 then x:=x-1; write(x); ...
...
Read(x); if x>=1 then x:=x-1; write(x); ...
2.1.3 进程的特征和状 态
进程是操作系统中一个最基本也是最重要的概念, 但目前没有一个非常确切的定义。很多人从不同 角度对进程下过定义,较典型的进程定义有: (1)进程是程序的一次执行。
(2)封闭性。程序运行时独占全机资 源;资源的状态(除初始状态外)只有 本程序才能改变它。程序一旦开始运行, 其执行结果不受外界因素影响。
(3)可再现性。只要执行时的环境和 初始条件相同,程序不论是连续执行还 是“走走停停”地执行,都将获得相同
2.1.2 前趋图
定义:前趋图是一个有向无循环图,记为DAG(Directed Acyclic Graph),用于描述进程之间执行的前后关系。图 中每个结点可用于描述一个程序段或进程,乃至一条语 句;结点间的有向边表示两结点间的偏序关系或前趋关 系“→”。前趋关系“→”的定义: →={(Pi,Pj)| Pi must complete before Pj may start}。记作: Pi →Pj。称Pi是Pj的直接前趋,Pj是Pi的直接后继。没有 前趋的称为初始结点(Initial Node),没有后继的称为 终止结点(Final Node)。
I1
I2
I3
I4
C1
C2
C3
C4
P1
P2
P3
P4
上图中,I 、C和 P是三个相互合作的程序, 当计算程序完成Ci-1的计算后,如果输入程序I尚 未完成Ii的处理,则计算程序就无法进行Ci的处 理,致使计算程序必须暂停运行。
• 失去封闭性:共享资源,受其他程序的控制逻辑 的影响。如:一个程序写到存储器中的数据可能 被另一个程序修改,失去原有的不变特征。 • 失去可再现性:失去封闭性 →失去可再现性; 外界环境在程序的两次执行期间发生变化,失去 原有的可重复特征。
(2)进程是一个程序及其数据在处理机上顺序执 行时所发生的活动。
(3)进程是程序在一个数据集合上运行的过程, 它是系统进行资源分配和调度的一个独立单位。 本教材定义进程为:进程是进程实体的运行过程, 是系统进行资源分配和调度的一个独立单位。
进程与程序的区别
•进程是动态的,程序是静态的:程序是有序代码 的集合;进程是程序的执行。通常进程不可在计 算机之间迁移;而程序通常对应着文件、静态和 可以复制。 •进程是暂时的,程序是永久的:进程是一个状态 变化的过程,程序可长久保存。 •进程与程序的组成不同:进程的组成包括程序、 数据和进程控制块(即进程状态信息)。 •进程与程序的对应关系:通过多次执行,一个程 序可对应多个进程;通过调用关系,一个进程可 包括多个程序。
就绪
时间片完 I/O完成
阻塞 I/O请求 进程调度 执行
1、处于就绪绪状态的进程, 在调度程序为之分配了处 理机之后,该进程便可执 行,相应地它就由就绪态 变为执行状态; 2、如果因发生某事件而使 进程的执行受阻,使之无 法继续执行,该进程将由 执行状态转变为阻塞状态; 如果分配给它的时间片已 完而被暂停执行时,该进 程由执行状态回复到就绪 状态。
I1
C1Leabharlann P1 图2-1 (a)I2
C2
P2
图2-1 (a)中有偏序关系: Ii→ Ci → Pi S1 S2 图2-1 (b) 图2-1 (b)中有偏序关系:S1→ S2→ S3 S3
P2 P5
P1
P3
P6 P4 P7
P8
P9
(a) 具有九个节点的前趋图 以上前趋图中,存在如下前趋关系: P1→P2, P1→P3, P1→P4, P2→P5, P3→P5, P4→P6, P4→P7, P5→P8, P6→P8, P7→P9, P8→P9 或表示为: P={P1,P2,P3,P4,P5,P6,P7,P8,P9} →={(P1,P2),(P1,P3),(P1,P4),(P2,P5),(P3,P5),(P4,P6),(P4,P7),(P5,P8), (P6,P8),(P7,P9),(P8,P9)}
引入了挂起状态的进程状态转换
引入挂起状态的原因:
•终端用户的请求。当终端用户在自己的程序运行期间 发现有可疑问题时,希望暂时使自己的程序静止下来。 这种静止状态就是挂起状态。
•父进程请求 父进程要求挂起自己的子进程,以便考 查和修改;
•负荷调节的需要 实时系统中负荷较重时,系统会把 一些不重要的进程挂起; •操作系统的需要 操作系统希望挂起一些进程,以便 检查运行中的资源使用情况。
有如有程序段: S1: a:=x+2 S2: b:=y+4 S3: c:=a+b S4: d:=c+b
该例中存在下述前趋关系:
s1
S3 S2 S4
S3必须在a和b被赋值后方能执行;S4必须在S3之 后执行;但S1和S2则可以并发执行。
程序并发执行时的特征
• 间断(异步)性:“执行——暂停——执行” ,一个程序可能走到中途停下来,失去原有 的时序关系。由于程序并发执行时共享系统 资源,以及为完成同一项任务而相互合作, 致使在这些并发执行的程序之间,形成了相 互制约的关系。
程序顺序执行的图示
对于程序段中的多条语句来说,也有一个执行顺序问题, 如对于包含下述三条语句的程序段:
S1: a=x+y; S2: b=a-5; S3: c=b+1;
可表示为: S1 S2 图2-1 (b) S3
一切顺序执行的程序都具有下列特性: (1)顺序性。即每一操作都必须在上 一个操作结束之后开始。
图 进程的三种基本状态及其转换 3、正在执行的当前进程,
下一页
就绪 时间片完 I/O完成 阻塞
进程调度
执行
I/O请求
图 进程的三种基本状态及其转换 状态变化有 : (1)就绪状态变化到运行状态 。 (2)运行状态变化到就绪状态。 (3)运行状态变化到阻塞状态。 (4)阻塞状态变化到就绪状态。
返回本节目录
引入挂起状态后的进程状态转换
引入挂起之后,增加了从挂起状态(又称静止状 态)到非挂起状态(又称活动状态)的转换;或 者相反。有以下几种情况: 活动就绪→ 静止就绪 当进程处于未被挂起的 就绪状态时,称为活动就绪,表示为Readya。 当用挂起原语Suspend将该进程挂起后,该进 程转换为静止就绪状态,表示为Readys,处于 Readys状态的进程不再被调度执行。
程序顺序执行的图示
例如,进行计算时,总需要首先输入数据,然后进行计 算,最后才能打印计算结果。假如用I表示输入,C表示 计算,P表示打印,并且用箭头表示操作的先后次序。则 输入数据,计算数据,打印计算结果这样一段程序 可表示为: