操作系统-进程管理习题课
最新第二章 操作系统进程(练习题答案)
![最新第二章 操作系统进程(练习题答案)](https://img.taocdn.com/s3/m/1cd4620bce2f0066f43322ac.png)
第二章进程管理121.操作系统主要是对计算机系统全部 (1) 进行管理,以方便用3户、提高计算机使用效率的一种系统软件。
它的主要功能有:处理机管理、存4储管理、文件管理、 (2) 管理和设备管理等。
Windows和Unix是最常用5的两类操作系统。
前者是一个具有图形界面的窗口式的 (3) 系统软6件,后者是一个基本上采用 (4) 语言编制而成的的系统软件。
在7(5) 操作系统控制下,计算机能及时处理由过程控制反馈的信息并作出响8应。
9供选答案:10(1): A. 应用软件 B. 系统软硬件11C. 资源D. 设备12(2): A. 数据 B. 作业13C. 中断D. I/O14(3): A. 分时 B. 多任务15C. 多用户D. 实时16(4): A. PASCAL B. 宏17C. 汇编D. C18(5): A. 网络 B. 分时19C. 批处理D. 实时20答案:CBBDD212.操作系统是对计算机资源进行的 (1) 系统软件,是 (2) 22的接口。
23在处理机管理中,进程是一个重要的概念,它由程序块、 (3) 和24数据块三部分组成,它有3种基本状态,不可能发生的状态转换是25(4) 。
26虚拟存储器的作用是允许程序直接访问比内存更大的地址空间,它通常使27用 (5) 作为它的一个主要组成部分。
28供选答案:29(1): A. 输入和输出 B. 键盘操作30C. 管理和控制D. 汇编和执行31(2): A. 软件和硬件 B. 主机和外设32C. 高级语言和机器语言D. 用户和计算机33(3): A. 进程控制块 B. 作业控制块34C. 文件控制块D. 设备控制块35(4): A. 运行态转换为就绪态 B. 就绪态转换为运行态36C. 运行态转换为等待态D. 等待态转换为运行态37(5): A. 软盘 B. 硬盘38C. CDROMD. 寄存器39答案:CDADB403.在计算机系统中,允许多个程序同时进入内存并运行,这种方法称为41D。
操作系统解答题练习
![操作系统解答题练习](https://img.taocdn.com/s3/m/8ac17ad0162ded630b1c59eef8c75fbfc77d9413.png)
操作系统解答题练习---操作系统解答题练习1、进程管理1.1 什么是进程?进程是计算机中正在执行的程序的实例。
每个进程都有自己的内存空间和资源,它们彼此独立地运行,并与操作系统交互。
1.2 进程状态转换进程可以处于以下几种状态:- 新建状态:进程被创建但还没有执行。
- 运行状态:进程当前正在执行。
- 阻塞状态:进程因为某些原因(如等待I/O)而暂时停止执行。
- 就绪状态:进程已满足执行的条件,等待系统分配资源。
- 终止状态:进程执行完成或被终止。
1.3 进程调度算法进程调度算法用于确定哪些进程应该获得CPU的使用权。
常见的进程调度算法包括先来先服务(FCFS)、短作业优先(SJF)、轮转调度和优先级调度。
2、内存管理2.1 什么是虚拟内存?虚拟内存是一种将内存扩展到计算机硬盘上的技术。
它使得计算机可以运行比物理内存更大的程序,通过将不活动的数据存储在硬盘上,并在需要时进行交换,以便为活动程序腾出内存空间。
2.2 虚拟内存的优点和缺点优点:- 允许运行比物理内存更大的程序。
- 提高了内存的利用率。
- 提供了内存保护,防止程序相互干扰。
缺点:- 较慢的访问速度,与访问物理内存相比,需要进行磁盘IO操作。
- 需要额外的硬盘空间。
2.3 页面置换算法页面置换算法用于在虚拟内存中选择要替换的页面。
常见的页面置换算法有最佳置换算法、先进先出置换算法(FIFO)、最近最久未使用置换算法(LRU)和时钟置换算法。
3、文件系统3.1 文件系统的层次结构文件系统通常由多个层次组成,常见的层次有逻辑文件系统、文件目录、文件控制块和物理文件系统。
3.2 文件的组织方式文件的组织方式有顺序文件、索引文件和随机文件三种常见方式。
3.3 文件共享和保护文件共享是指多个进程可以同时访问同一文件的能力。
文件保护是指确保只有被授权的用户可以对文件进行访问,防止非法操作。
4、设备管理4.1 设备分配方式设备分配方式有三种常见方式:独占分配、共享分配和按需分配。
进程管理习题课
![进程管理习题课](https://img.taocdn.com/s3/m/f66f7f1cfad6195f312ba69c.png)
一、判断题1.( )操作系统的所有程序都必须常驻内存。
2.( )多道程序设计可以缩短系统中作业的执行时间。
3.( )实时系统中的作业周转时间有严格的限制。
4.( )进程获得处理机而运行是通过申请而得到的。
5.( )同一个程序不能被创建成多个进程。
6.( )子进程可以继承它的父进程所拥有的所有资源。
7.( )对于临界区,最重要的是断定哪个进程先执行临界区里的那段程序。
8.( )若进程A和进程B在临界区上互斥,那么当A位于临界区内时不能打断它的运行。
9.( )进程间的互斥是一种特殊的同步关系。
10.( )临界区是指进程中用于实现进程互斥的那段代码。
11.( )资源的同时共享是指多个用户作业可以在同一时刻使用同一资源。
12.( )并发性是指若干事件在同一时间间隔内发生。
13.( )进程在运行中,可以自行修改自己的进程控制块PCB。
14.( )进程申请CPU得不到满足时,其状态变为等待态。
15.( )当一个进程从等待态变成就绪态,则一定有一个进程从就绪态变成运行态。
16.( )进程状态的转换是由操作系统完成的,对用户是透明的。
17.( )优先数是进程调度的重要依据,优先数大的进程首先被调度运行。
18.( )不可抢占式动态优先数法一定会引起进程长时间得不到运行。
19.( )进程调度的主要功能是从所有处于等待状态的进程中挑选一个"最合适"的进程,创建好进程运行所需要的环境,然后把处理机分配给它。
20.( )无限循环和无限延迟是一个概念。
21.( )导致系统出现死锁的一种原因是某个用户作业发生了死循环。
22.( )一旦出现死锁,所有进程都不能运行。
23.( )所有进程都挂起时系统陷入死锁。
24.( )参与死锁的进程至少有两个已经占有资源。
25. ( )有M个进程的操作系统出现死锁时,死锁进程的个数为1<k<=M。
26.( )所有进程都进入等待状态时,系统陷入死锁。
27.( )系统调用是用户程序请求操作系统服务的唯一方式。
操作系统练习题 第2章进程管理
![操作系统练习题 第2章进程管理](https://img.taocdn.com/s3/m/d207fec57f1922791688e83c.png)
第二章进程管理练习题(一)单项选择题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.C PU D.磁盘空间7.在一个单处理器系统中,处于运行态的进程( )。
A.可以有多个B.不能被打断C.只有一个D.不能请求系统调用8.对于一个单处理器系统来说,允许若干进程同时执行,轮流占用处理器.称它们为()的。
A. 顺序执行B. 同时执行C. 并行执行D. 并发执行9.操作系统根据( )控制和管理进程,它是进程存在的标志。
A.程序状态字B.进程控制块C.中断寄存器D.中断装置10.若干个等待占有CPU并运行的进程按一定次序链接起来的队列为( )。
A.运行队列B.后备队列C.等待队列D.就绪队列11.临界区是指( )。
A. 并发进程中用于实现进程互斥的程序段B.并发进程中用于实现进程同步的程序段C.并发进程中用户实现进程通信的程序段D.并发进程中与共享变量有关的程序段12.对于记录型信号量,在执行一次P操作时,信号量的值应( )。
A.不变B.加1 C.减1D.减指定数值13.在执行signal操作时,当信号量的值( )时,应释放一个等待该信号量的进程。
A.0 B.<0 C.>=0 D.<=014.wait、signal操作必须在屏蔽中断下执行,这种不可变中断的过程称为( )。
操作系统习题集之进程管理
![操作系统习题集之进程管理](https://img.taocdn.com/s3/m/3d7d803a3968011ca3009150.png)
操作系统习题集之进程和处理机管理来源:北大的MSE:有关计算机的一些辅导资料日期:2010-12-5第7章进程及处理机管理学习重点(1)操作系统“核心”功能和特点(2)程序的顺序执行与并发执行(3)进程的定义,进程的五个基本特征,进程控制块,程序与进程的对比,进程与线程(4)进程的描述;进程的基本状态及转換(就绪、执行、等待)(5)进程调度算法(先来先服务、RR轮转法、多级反馈轮转法和优先数法)(6)进程通信:同步与互斥、临界区、原语(加锁/开锁原语、信号量及P-V操作)、消息缓冲(7)什么是死锁?产生死锁的四个必要条件(互斥使用、保持和等待、非剥夺性、循环等待和处理)教学要求:(1)牢固掌握进程的概念。
(2)熟练掌握操作系统核心功能、核心形式。
(3)掌握顺序执行与并发执行的比较。
(4)熟练掌握进程的五个基本特征,掌握进程与程序的主要区别。
理解进程与线程的关系。
(5)掌握进程的基本状态:执行态、就绪态、等待态。
在什么条件下发生状态转换?(6)理解进程的一般组成,应深入理解进程控制块的作用。
每个进程有惟一的进程控制块。
(7)理解常用的进程调度算法。
(8)掌握进程同步与互斥的比较,简单理解为同步是伙伴,互斥是竞争。
(9)理解信号量概念,P、V操作执行的动作。
(10)掌握死锁的概念、死锁的必要条件、解决死锁的基本方法。
习题1、什么是进程?答:进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。
它是操作系统动态执行的基本单元,在传统的操作系统中,进程既是基本的分配单元,也是基本的执行单元。
(在Windows NT等采用微内核结构的现代操作系统中,进程的功能发生了变化:它只是资源分配的单位,而不再是调度运行的单位,其调度运行的基本单位是线程。
)2、进程的互斥和同步有什么异同点?答:同步与互斥特点比较见教材127页表6-4。
同步互斥进程-进程进程-资源-进程时间次序上受到某种限制竞争到某一物理资源时不允许其他进程工作相互清楚对方的存在及其作用,交换信息不一定清楚其他进程情况往往指有几个进程共同完成一个任务往往指多个任务多个进程间通讯制约,故更广泛举例:生产与消费之间,发送与接收之间,作者与读者之间,供者与用者之间。
操作系统习题第二章习题(进程管理)
![操作系统习题第二章习题(进程管理)](https://img.taocdn.com/s3/m/068f26d587c24028915fc3ff.png)
一、单项选择题1.在进程管理中,当C 时,进程从阻塞状态变为就绪状态。
A. 进程被进程调度程序选中 B.等待某一事件C. 等待的事件发生 D.时间片用完2.分配到必要的资源并获得处理机时的进程状态是B 。
A. 就绪状态 B.执行状态C.阻塞状态 C. 撤消状态3.P、V操作是 A 。
A. 两条低级进程通信原语 B.两组不同的机器指令C. 两条系统调用命令 D.两条高级进程通信原语4.对进程的管理和控制使用 B 。
A.指令 B.原语C.信号量 D.信箱通信5.进程的并发执行是指若干个进程 D 。
A. 同时执行 B.在执行的时间上是重叠的C.在执行的时间上是不可重叠的 D.共享系统资源6. 若P、V操作的信号量s初值为2,当前值为-1,则表示有 B等待进程。
A.0个 B.1个 C.2个 D.3个7. 程序的顺序执行通常在① A 的工作环境中,具有②C 特征;程序的并发执行在③ B 的工作环境中,具有④ D 特征。
A. 单道程序 B.多道程序C. 程序的可再现性 D.资源共享8.进程的三个基本状态在一定条件下可以相互转化,进程由就绪状态变为运行状态的条件是① D ;由运行状态变为阻塞状态的条件是② C 。
A. 时间片用完 B.等待某事件发生C. 等待的某事件己发生 D.被进程调度程序选中9.下列的进程状态变化中, B 变化是不可能发生的。
A. 运行一就绪 B.运行一等待C,等待一运行 D,等待一就绪10.一个运行的进程用完了分配给它的时间片后,它的状态变为 A。
A. 就绪 B.等待C. 运行 D.由用户自己确定11.用P、V操作管理临界区时,信号量的初值应定义为 C 。
A.-1 B.0 C.1 D.任意值12.用V操作唤醒一个等待进程时,被唤醒进程的状态变为 B 。
A. 等待 B,就绪 C运行 D.完成13.进程间的同步是指进程间在逻辑上的相互 B 关系。
A. 联接 B.制约 C. 继续 D.调用14. D 是一种只能进行P操作和V操作的特殊变量。
第2章 进程管理课后习题解答
![第2章 进程管理课后习题解答](https://img.taocdn.com/s3/m/58bdef06b52acfc789ebc984.png)
第题中,如果修改问题中的同步算法,要求 对写进程优先,即一旦写进程到达,后续的读者进程必须等待, 而无论是否有读者进程在读文件。写出相应进程的程序段。 semaphore fmutex=1, rmutex=1, wmutex=1;que=1;
int rcount=0, wcount=0; void main() { parbegin(reader, writer); }
12
void reader { while(1) { wait(que); wait(rmutex); if(0==readcount) wait(fmutex); readcount++; signal(rmutex); signal(que); …. begin to read wait(rmutex); readcount--; if(readcount==0) signal (fmutex); signal(rmutex); } }
读者—写者问题(读优先) 读者 写者问题(读优先) 写者问题 semaphore rmutex=1,wmutex=1; int readcount=0; = void main() { parbegin(reader,writer); }
读者进程: 读者进程: void reader() { while(1) { wait(rmutex); if (readcount==0) wait(wmutex); readcount++; signal(rmutex); … 读操作 wait(rmutex); readcount--; if (readcount==0) signal(wmutex); signal(rmutex); } }
18
chopstick[ ={1 semaphore chopstick[5]={1,1,1,1,1}; viod main() { parbegin(P0(),P1(),P2(),P3(),P4()); parbegin(P0(),P1(),P2(),P3(),P4()); } Pi() /*i=0,1,2,3,4*/ { while(1) { wait(chopstick[i]); [ ] wait(chopstick[(i+1)%5]); [ ] eating; … signal(chopstick[i]); [ ] signal(chopstick[(i+1) %5]); [ ] thinking; } }
进程管理习题
![进程管理习题](https://img.taocdn.com/s3/m/7f46a85b580216fc710afd2c.png)
第二章进程管理一、单项选择题1.一个进程是()。
A.由协处理器执行的一个程序B.一个独立的程序+数据集C.PCB结构与程序和数据的组合D.一个独立的程序2.下列关于线程的叙述中,正确的是()。
A.线程包含CPU现场,可以独立执行程序B.每个线程有自己独立的地址空间C.进程只能包含一个线程D.线程之间的通信必须使用系统调用函数3.进程之间交换数据不能通过()途径进行。
A.共享文件B.消息传递C.访问进程地址空间D.访问共享存储区4.进程和程序的根本区别是()。
A.静态和动态特点B.是不是被调入到内存在C.是不是具有就绪.运行和等待三种状态D.是不是占有处理器5.下面的叙述中,正确的是()。
A.进程获得处理器运行时通过调度得到的B.优先级是进程调度的重要依据,一旦确定不能改动C.在单处理器系统中,任何时刻都只有一个进程处于运行状态D.进程申请处理器而得不到满足时其状态变为阻塞状态6.若某一进程拥有100个线程,这些线程都属于用户级线程,则在系统调度执行时间上占用的时间片是()。
A.1 B.100 C.1/100 D.07.进程Pl .P2和P3单独执行时间分别为10min.15 min和20min,其中处理器占用时间分别为2min.3 min和12min。
如果采用多道程序设计技术使其并发,加上系统开销5min ,那么并发使得计算机系统的效率提高了()。
A.1 B.38% C.74% D.51%8.操作系统是根据()来对并发执行的进程进行控制和管理的。
A.进程的基本状态B.进程控制块C.多道程序设计D.进程的优先权9.在任何时刻,一个进程的状态变化()引起另一个进程的状态变化。
A.必定B.一定不C.不一定D.不可能10.在单处理器系统中,如果同时存在10个进程,则处于就绪队列中的进程最多有()个。
A.1 B.8 C.9 D.1011.一个进程释放了一台打印机后,有可能改变()的状态。
A.自身进程B.输入/输出进程C.另一个等待打印机的进程D.所有等待打印机的进程12.假定系统进程所请求的一次I/0操作完成后,将使进程状态从()。
计算机操作系统(第四版)---第二章进程的描述与控制课后习题答案
![计算机操作系统(第四版)---第二章进程的描述与控制课后习题答案](https://img.taocdn.com/s3/m/ef4a84eef605cc1755270722192e453610665bfd.png)
计算机操作系统(第四版)---第⼆章进程的描述与控制课后习题答案1.什么是前趋图?为什么要引⼊前趋图?答:前趋图(Precedence Graph)是⼀个有向⽆循环图,记为DAG(DirectedAcyclicGraph),⽤于描述进程之间执⾏的前后关系。
2.画出下⾯四条语句的前趋图:S1:a=x+y; S2:b=z+1; S3:c=a – b;S4:w=c+1;3. 什么程序并发执⾏会产⽣间断性特征?答:程序在并发执⾏时,由于它们共享系统资源,为完成同⼀项任务需要相互合作,致使这些并发执⾏的进程之间,形成了相互制约关系,从⽽使得进程在执⾏期间出现间断性。
4.程序并发执⾏时为什么会失去封闭性和可再现性?答:程序并发执⾏时,多个程序共享系统中的各种资源,因⽽这些资源的状态由多个程序改变,致使程序运⾏失去了封闭性,也会导致其失去可再现性。
5.在操作系统中为什么要引⼊进程概念?它会产⽣什么样的影响?答:为了使程序在多道程序环境下能并发执⾏,并对并发执⾏的程序加以控制和描述,在操作系统中引⼊了进程概念。
影响: 使程序的并发执⾏得以实⾏。
6.试从动态性,并发性和独⽴性上⽐较进程和程序?答:(1)动态性是进程最基本的特性,表现为由创建⽽产⽣,由调度⽽执⾏,因得不到资源⽽暂停执⾏,由撤销⽽消亡。
进程有⼀定的⽣命期,⽽程序只是⼀组有序的指令集合,是静态实体。
(2)并发性是进程的重要特征,同时也是OS 的重要特征。
引⼊进程的⽬的正是为了使其程序能和其它进程的程序并发执⾏,⽽程序是不能并发执⾏的。
(3)独⽴性是指进程实体是⼀个能独⽴运⾏的基本单位,也是系统中独⽴获得资源和独⽴调度的基本单位。
对于未建⽴任何进程的程序,不能作为独⽴单位参加运⾏。
7.试说明PCB 的作⽤,为什么说PCB 是进程存在的惟⼀标志?答:PCB 是进程实体的⼀部分,是操作系统中最重要的记录型数据结构。
作⽤是使⼀个在多道程序环境下不能独⽴运⾏的程序,成为⼀个能独⽴运⾏的基本单位,成为能与其它进程并发执⾏的进程。
《操作系统》习题集:第2章 进程与线程(第1部分)
![《操作系统》习题集:第2章 进程与线程(第1部分)](https://img.taocdn.com/s3/m/3467c9e5524de518964b7dc0.png)
第2章进程与线程-习题集一、选择题1.以下关于进程的描述中,正确的是()。
【*,联考】A. 进程获得CPU运行是通过调度得到的B. 优先级是进程调度的重要依据,一旦确定就不能改变C. 在单CPU的系统中,任意时刻都有一个进程处于运行状态D. 进程申请CPU得不到满足时,其状态变为阻塞2.一个进程是()。
【*,联考】A. 由处理机执行的一个程序B. 一个独立的程序+数据集C. PCB结构、程序和数据的组合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. 就绪状态D. 完成状态9.当一个进程完成一个时间片后,系统需要将该进程的状态由运行状态转变为()。
【*,联考】A. 就绪状态B. 阻塞状态C. 撤销状态D. 创建状态10.进程状态由就绪态转换为运行态是由()引起的。
【**,联考】A. 中断事件B. 进程状态转换C. 进程调度D. 为程序创建进程11.下列选项中,降低进程优先级的合理时机是()。
【***,10考研】A. 进程的时间片用完B. 进程刚完成I/O,进入就绪队列C. 进程长期处于就绪队列中D. 进程从就绪状态转为运行态12.()必会引起进程切换。
操作系统__第二章_进程管理_习题答案
![操作系统__第二章_进程管理_习题答案](https://img.taocdn.com/s3/m/8a5a96014a73f242336c1eb91a37f111f1850d00.png)
操作系统__第二章_进程管理_习题答案第二章进程管理2. 试画出下面4条语句的前趋图:S1S1: a:=x+y;S4S3S2: b:=z+1;S2S3: c:=a-b; S4: w:=c+1; 3. 为什么程序并发执行会产生间断性特征?程序在并发执行时,由于它们共享系统资源,以及为完成同一项任务而相互合作,致使在这些并发执行的进程之间,形成了相互制约的关系,从而也就使得进程在执行期间出现间断性。
4. 程序并发执行时为什么会失去封闭性和可再现性?因为程序并发执行时,是多个程序共享系统中的各种资源,因而这些资源的状态是由多个程序来改变,致使程序的运行失去了封闭性。
而程序一旦失去了封闭性也会导致其再失去可再现性。
5. 在操作系统中为什么要引入进程概念?它会产生什么样的影响?为了使程序在多道程序环境下能并发执行,并能对并发执行的程序加以控制和描述,从而在操作系统中引入了进程概念。
影响: 使程序的并发执行得以实行。
6. 试从动态性,并发性和独立性上比较进程和程序?a. 动态性是进程最基本的特性,可表现为由创建而产生,由调度而执行,因得不到资源而暂停执行,以及由撤销而消亡,因而进程由一定的生命期;而程序只是一组有序指令的集合,是静态实体。
b. 并发性是进程的重要特征,同时也是OS的重要特征。
引入进程的目的正是为了使其程序能和其它建立了进程的程序并发执行,而程序本身是不能并发执行的。
c. 独立性是指进程实体是一个能独立运行的基本单位,同时也是系统中独立获得资源和独立调度的基本单位。
而对于未建立任何进程的程序,都不能作为一个独立的单位来运行。
7. 试说明PCB的作用?为什么说PCB是进程存在的唯一标志?a. PCB是进程实体的一部分,是操作系统中最重要的记录型数据结构。
PCB中记录了操作系统所需的用于描述进程情况及控制进程运行所需的全部信息。
因而它的作用是使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能和其它进程并发执行的进程。
现代操作系统课后习题答案
![现代操作系统课后习题答案](https://img.taocdn.com/s3/m/b96fe71633687e21af45a974.png)
第二章进程管理第一部分教材习题(P81)3、为什么程序并发执行会产生间断性特征?(P36)4、程序并发执行,为何会失去封闭性和可再现性?(P37)【解】程序在并发执行时,是多个程序共享系统中的各种资源,因而这些资源的状态将由多个程序来改变,致使程序的运行已失去了封闭性。
同时由于失去了封闭性,也将导致其再失去可再现性。
程序在并发执行时,由于失去了封闭性,程序经过多次执行后,其计算机结果已与并发程序的执行速度有关,从而使程序的执行失去了可再现性。
5、在操作系统中为什么要引入进程概念?(P37)它会产生什么样的影响?【解】在操作系统中引入进程的概念,是为了实现多个程序的并发执行。
传统的程序不能与其他程序并发执行,只有在为之创建进程后,才能与其他程序(进程)并发执行。
这是因为并发执行的程序(即进程)是“停停走走”地执行,只有在为它创建进程后,在它停下时,方能将其现场信息保存在它的PCB中,待下次被调度执行是,再从PCB中恢复CPU现场并继续执行,而传统的程序却无法满足上述要求。
建立进程所带来的好处是使多个程序能并发执行,这极提高了资源利用率和系统吞吐量。
但管理进程也需付出一定的代价,包括进程控制块及协调各运行机构所占用的存空间开销,以及为进行进程间的切换、同步及通信等所付出的时间开销。
6、试从动态性、并发性和独立性上比较进程和程序?(P37)【解】(1)动态性:进程既然是进程实体的执行过程,因此,动态性是进程最基本的特性。
动态性还表现为:“它由创建而产生,由调度而执行,因得不到资源而暂停执行,以及由撤消而消亡”。
可见,进程有一定的生命期。
而程序只是一组有序指令的集合,并存放在某种介质上,本身并无运动的含义,因此,程序是个静态实体。
(2)并发性:所谓进程的并发,指的是多个进程实体,同存于存中,能在一段时间同时运行。
并发性是进程的重要特征,同时也成为OS的重要特征。
引入进程的目的也正是为了使其程序能和其它进程的程序并发执行,而程序是无法并发执行的。
操作系统第2章(进程和线程的管理习题及解答)
![操作系统第2章(进程和线程的管理习题及解答)](https://img.taocdn.com/s3/m/f4525fa4b9f3f90f76c61bc6.png)
第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 为什么将进程划分成执行、就绪和阻塞三个基本状态?解根据多道程序执行的特点,进程的运行是走走停停的。
因此进程的初级状态应该是执行和等待状态。
处于执行状态的进程占用处理机执行程序,处于等待状态的进程正在等待处理机或者等待其它某种事件的发生。
但是,当处理机空闲时,并不是所有处于等待状态的进程都能放到处理机上执行,有的进程即使分配给它处理机,它也不能执行,因为它的执行的条件没有得到满足。
操作系统-进程管理习题课
![操作系统-进程管理习题课](https://img.taocdn.com/s3/m/af8b3b292f60ddccda38a0e1.png)
十一题
设有一个发送者进程和一个接收者进程。s 是用于实现进程同步的信号量,mutex是 用于实现进程互斥的信号量。试问流程图 中的A、B、C、D四框中应填写什么?假定 缓冲区有无限多个,s和mutex的初值应为 多少?
十二题
①写出P、V操作的定义。 ②有三个进程PA、PB和PC合作解决文件打印问题: PA将文件记录从磁盘读入主存 的缓冲区1,每执行一次 读一个记录; PB将缓冲区1的内容复制到缓冲区2,每执行一次复制一 个记录; PC将缓冲区2的内容打印出来,每执行一次打印一个记 录。缓冲区的大小等于一个记录大小。请用P、V操作来 保证文件的正确打印。
第二题(续)
假定这些生产者和消费者是互相等效的。只要缓冲区 未满,生产者就可以把产品送入缓冲区,类似地,只 要缓冲区未空,消费者便可以从缓冲区中取走物品并 消耗它。生产者和消费者的同步关系将禁止生产者向 满的缓冲区输送产品,也禁止消费者从空的缓冲区中
第三题(选择)
在操作系统中,进程是一个具有一定独立功能 的程序在某个数据集上的一次 _____。 A.等待活动 B.运行活动 C.单独操作 D.关联操作 答:B
第四题(选择)
多道程序环境下,操作系统分配资源以___ ____为基本单位。 A.程序 B.指令 C进程 D.作业 答:C
第五题(选择)
对于两个并发进程,设互斥信号量为mutex, 若mutex=0,则_____。 A.表示没有进程进入临界区 B.表示有一个进程进入临界区 C.表示有一个进程进入临界区,另一个进程等 待进入 D.表示有两个进程进入临界区 答:B
进程管理习题课
重点:用P、V原语实现同步与互斥
操作系统进程部分的习题
![操作系统进程部分的习题](https://img.taocdn.com/s3/m/ffa2e6d828ea81c758f57836.png)
进程部分的习题1. 在公共汽车上,司机进程和售票员进程各司其职。
司机在正常行车中售票员售票,两者之间没有制约关系,可以任意并发。
但是在其他环节,司机和售票员进程之间存在着如下同步关系:1)司机停车后等待售票员关门后才能启动车辆。
2)售票员售完票后,等待司机到站停车,停车后才能打开车门。
var door,stop:semaphore:=0,0beginparbegin司机进程:beginwhile(true){wait(door); //等待售票员发送关门信息启动车辆;正常行车;到站停车;signal(stop);//给售票员发送到站信息}end;售票员进程:beginwhile(true){关车门;signal(door); //给司机发送关门信息售票;wait(stop);//等待司机发送到站信息开车门;上下乘客;}endparendend.2.某寺庙,有小和尚,老和尚若干。
有一水缸,由小和尚提水入缸供老和尚饮用。
水缸可容10桶水,水取自同一井中。
水井径窄,每次中能容下一个桶取水。
水桶总数为3个。
每人一次取缸水仅为1桶,且不可同时进行。
试用记录型信号量给出有关取水、入水的算法描述。
根据题意,定义信号量及其初值如下:(1)水桶为临界资源需互斥使用,定义信号量bucket,因有3个桶,故初值为3;(2)水井一次只能允许下一个桶取水,定义互斥信号量well,初值为1;(3)水缸一次只能允许一个人取水,定义互斥信号量jar,初始值为1;(4)empty和full用于小和尚和老和尚之间的同步制约关系。
因为缸能存10桶水,所以empty初始值为10;开始时缸中没有水,full的初始值为0。
semaphore bucket=3,jar=1,full=0,empty=10,well=1; young_monk(){ /*小和尚入水算法*/while(1){wait(empty);wait (bucket);wait (well);从水井中打水;signal(well);wait (jar);倒入水缸;signal (jar);signal (bucket);signal (full);}}old_monk(){ /*老和尚取水算法*/while(1){wait(full);wait (bucket);wait (jar);从缸中取水;signal (jar);signal (bucket);signal (empty);从桶中倒入饮用;}}3.设有3个进程A、B、C,其中A与B构成一对生产者与消费者(A为生产者,B为消费者),共享一个由n个缓冲区组成的缓冲池;B与C也构成一对生产者与消费者(此时B为生产者,C为消费者),共享另一个由m个缓冲区组成的缓冲池。
进程管理习题课共45页文档
![进程管理习题课共45页文档](https://img.taocdn.com/s3/m/9bb0e3fa3169a4517623a3c4.png)
▪
27、只有把抱怨环境的心情,化为上进的力量,才是成功的保证。——罗曼·罗兰
▪
28、知之者不如好之者,好之者不如乐之者。——孔子
▪
29、勇猛、大胆和坚定的决心能够抵得上武器的精良。——达·芬奇
▪
30、意志是一个强壮的盲人,倚靠在明眼的跛子肩上。——叔本华
谢谢!
Hale Waihona Puke 4516、云无心以出岫,鸟倦飞而知还。 17、童孺纵行歌,斑白欢游诣。 18、福不虚至,祸不易来。 19、久在樊笼里,复得返自然。 20、羁鸟恋旧林,池鱼思故渊。
进程管理习题课
▪
26、要使整个人生都过得舒适、愉快,这是不可能的,因为人类必须具备一种能应付逆境的态度。——卢梭
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
十四题
十四、设有8个程序progl、prog2、…、 prog8。它们在并发系统中执行时有如图 所示的制约关系,试用P、V操作实现这 些程序间的同步。P48
分析
由图表明开始时,progl及prog2先执行。 当progl和prog2都执行完后,prog3、prog4、 prog5才可以开始执行。 prog3完成后,prog6才能开始执行。 prog5完成后,prog7 才能开始执行。 prog6、prog4、prog7都结束后,prog8才可以开 始执行。 为了确保这一执行顺序,设7个同步信号量 f1、…、f7分别表示程序progl、…、prog7是 否执行完,其初值均为0。
第一题
一、用P、V操作描述前趋关系。P1、P2、 P3、P4、P5、P6为一组合作进程,其前 趋图如图所示,试用P、V操作描述这6 个进程的同步。
第二题
二、生产者-消费者问题 它描述了一组生产者向 一组消费者提供产品,它们共享一个有界缓 冲区,生产者向其中投放产品,消费者从中 取得产品。生产者-消费者问题是许多相互合 作进程的一种抽象。 我们把一个长度为n的有界缓冲区(n>0)与一群 生产者进程P1、P2、…、Pm和一群消费者进 程C1、C2、…、Ck联系起来,如图所示。提 取物品。
分析
[分析及相关知识] 在本题中,爸爸、儿子、女 儿共用一个盘子,且盘中一次只能放一个水 果.当盘子为空时,爸爸可将一个水果放入 果盘中。若放入果盘中的是桔子,则允许儿 子吃,女儿必须等待;若放入果盘中的是苹果, 则允许女儿吃,儿子必须等待。 本题实际上是生产者—消费者问题的一种变形。 这里,生产者放入缓冲区的产品有两类,消 费者也有两类,每类消费者只消费其中固定 的一类产品。
分析
在本题中,我们可以设置两个信号量来控制A、 B产品的存放数量,sa表示当前允许A产品比B 产品多入库的数量,即在当前库存量和B产品 不入库的情况下,还可以允 许sa个A产品入 库;sb表示当前允许B产品比A产品多入库的数 量,即在当前库存量和 A产品不入库的情况 下,还可以允许sb个B产品入库。 初始时,sa为M一1,sb为N一1,当往库中存放 入一个A产品时,则允许存入B产品的数量也 增加1;当往库中存放入一个B产品时,则允许 存入A产品的数量也增加1。
第九题
九、下图给出了四个进程合作完成某一任 务的前趋图,试说明这四个进程间的同 步关系,并用P、V操作描述它。
第十题
十、桌上有一空盘,允许存放一只水果。 爸爸可向盘中放苹果,也可向盘中放桔 子,儿子专等吃盘中的桔子,女儿专等 吃盘中的苹果。规定当盘空时一次只能 放一只水果供吃者取用,请用P、V原语 实现爸爸、儿子、女儿三个并发进程的 同步。P37
进程管理习题课
重点:用P、V原语实现同步与互斥
本章小结
进程是系统分配资源的基本单位,是一个具有独 立功能的程序段对某个数据集的一次执行活动。 为什么要引入进程的概念是由操作系统的资源 有限性和处理上的并行性以及系统用户的执行 起始时间的随机性所决定的。 进程具有动态性、并发性等特点。 进程动态特性的是进程状态的变化。进程要经 历创建、等待资源、就绪准备执行,以及执行和 执行后释放资源消亡等几个过程和状态。进程 的状态转换要由不同的原语执行完成。
分析
[分析及相关知识]发送者进程与接收者进程之 间的同步关系是:发送者进程生成的信息送 入消息链中,接收者进程从消息链中接收信 息;由于发送者进程产生一个消息并链入消息 链后用V操作增加消息计数并唤醒接收者进程, 这表示发送者进程和接收者进程是通过信号 量s实现同步的,因此接收者进程应该在取信 息之前先使用一个P操作来查看消息链上是否 有消息,若无消.息则阻塞自己;另外,发送 者和接收者对消息链的访问应使用信号量进 行互斥,即在访问前使用P操作,在访问后使 用V操作。
答案
int s1=0; int s2=0; driver() { while(1) { p(s1); 启动车辆; 正常行车; 到站停车; v(s2); } } busman() { while(1) { 关车门; v(s1); 售票; p(s2); 开车门; 上下乘客; } }
十二题
十二、设有一个发送者进程和一个接收者 进程,其流程图如图所示。s是用于实现 进程同步的信号量,mutex是用于实现 进程互斥的信号量。试问流程图中的A、 B、C、D四框中应填写什么?假定缓冲 区有无限多个,s和mutex的初值应为多 少? p42
答案
A框 P(mutex) B框 V(mutex) C框 P(s) D框 P(mutex) 开始时,消息链上没有可供接收的信息, 所以s的初值为0;互斥信号量mutex的初 值应为1。
十三题
十三、(北京大学1990年试题)p46 ①写出P、V操作的定义。 ②有三个进程PA、PB和PC合作解决文件打印 问题: PA将文件记录从磁盘读入主存 的缓冲区1,每 执行一次读一个记录; PB将缓冲区1的内容复制到缓冲区2,每执行一 次复制一个记录; PC将缓冲区2的内容打印出来,每执行一次打印 一个记录。缓冲区的大小等于一个记录大小。 请用P、V操作来保证文件的正确打印。
第四题(选择)
四、多道程序环境下,操作系统分配资源 以_______为基本单位。 A.程序 B.指令 C进程 D.作业 答:C
第五题(选择)
五、对于两个并发进程,设互斥信号量为 mutex,若mutex=O,则_____。 A.表示没有进程进入临界区 B.表示有一个进程进入临界区 C.表示有一个进程进入临界区,另一个 进程等待进入 D.表示有两个进程进入临界区 答:B
第二题(续)
假定这些生产者和消费者是互相等效的。只要 缓冲区未满,生产者就可以把Байду номын сангаас品送入缓冲 区,类似地,只要缓冲区未空,消费者便可 以从缓冲区中取走物品并消耗它。生产者和 消费者的同步关系将禁止生产者向满的缓冲 区输送产品,也禁止消费者从空的缓冲区中
第三题(选择)
三、在操作系统中,进程是一个具有一定 独立功能的程序在某个数据集上的一次 __________。 A.等待活动 B.运行活动 C.单独操作 D.关联操作 答:B
第八题
八、在测量控制系统中,数据采集任务把 所采集的数据送入一单缓冲区;计算任务 从该单缓冲区中取出数据进行计算。试 写出利用信号量机制实现两者共享单缓 冲区的同步算法。
分析
[分析及相关知识] 在本题中采集任务与计 算任务共用一个单缓冲区.当采集 任 务采集到一个数据后,只有当缓冲区为 空时才能将数据送入缓冲区中存放,否 则应等待缓冲区腾空;当缓冲区中有数据 时,计算任务才能从缓冲区中取出数据 进行计算,否则也应等待。
本章小结(续)
进程上下文:一个进程的静态描述是处理机的一 个执行环境,被称为进程上下文。进程上下文由 以下部分组成:PCB(进程控制块)、正文段和数 据段以及各种寄存器和堆栈中的值。寄存器中主 要存放将要执行指令的逻辑地址,执行模式以及 执行指令时所要用到的各种调用和返回参数等。 而堆栈中则存放CPU现场保护信息、各种资源控 制管理信息等。 进程通信:进程间通信又可分为传送控制信号的 低级通信和大量传送数据的高级通信。 通信方式来看,又可分为主从式、会话式、消息 与邮箱方式、以及共享虚存方式。
本章小结
进程的并发特性反映在进程对资源的竞争以及由资 源竞争所引起的对进程执行速度的制约。这种制约 可分为直接制约和间接制约。 直接制约是被制约进程和制约进程之间,存在着使用 对方资源的需求,只有制约进程执行后,被制约进程才 能继续往前推进。具有固定的执行顺序 间接制约是被制约进程共享某个一次只能供一个进 程使用的系统资源,只有得到该资源的进程才能继续 往前推进,其他进程在获得资源进程执行期间不允许 交叉执行。没有固定的执行顺序。 操作实现:间接制约可利用加锁法和P,V原语操作实 现。直接制约既可用P,V原语实现,也可用其他互相 P78 传递信号的方式实现。
分析
[分析及相关知识] 信号量是一个确定的二元组 (s,q),其中s是一个具有非负初值的整型变量, q是一个与s相关联的初始状态为空的队列.整 型变量s表示系统中某类资源的数目,当其值 大于0时,表示系统中当前可用资源的数目; 当其值小于0时,其绝对值表示系统中因请求 该类资源而被阻塞的进程数目.除信号量的 初值外,信号量的值仅能由P操作和V操作改 变。
答案
int Se=l; int Sf=0; compute() main() { while(计算工作未完成) { cobegin { p(Sf); get(); 从缓冲区中取出数 compute(); 据; coend } v(Se); get() 进行数据计算; { while (采集工作未完成) } { 采集一个数据: } p(Se); 将数据送入缓冲区中; v(Sf); } }
第六题(选择)
六、两个进程合作完成一个任务。在并发 执行中,一个进程要等待其合作伙伴发 来消息,或者建立某个条件后再向前执 行,这种制约性合作关系被称为进程的 ____。 A.同步 B.互斥 C. 调度 D.执行 答:A
第七题(选择)
七、为了进行进程协调,进程之间应当具 有一定的联系,这种联系通常采用进程 间交换数据的方式进行,这种方式称为 ______。 A.进程互斥 B.进程同步 C .进程制约 D.进程通信 答:D
P79
本章小结(续)
常用的死锁排除方法是检测与恢复方法。 造成死锁:无论是互相通信的进程或是共享某些不 同类型资源的进程,都可能因通信顺序不当或资源分 配顺序不当而造成死锁。 死锁是一种因各并发进程等待资源而永久不能向前 推进的系统状态。 排除死锁的方法是预防、回避、检测与恢复三种。 线程是进程内的一段程序的基本调度单位。线程可 分为用户级线程和系统级线程。用户级线程的管理 全部由线程库完成,与操作系统内核无关。 线程组成由寄存器、堆栈以及程序计数器等组成,同 一进程的线程共享该进程的进程空间和其他所有资 源。线程主要用于多机系统以及网络系统的操作系 P79 统中。