操作系统--进程管理(描述与控制)
- 格式:ppt
- 大小:774.00 KB
- 文档页数:60


实验一、进程控制实验
1.1 实验目的
加深对于进程并发执行概念的理解。实践并发进程的创建和控制方法。观察和体验进程的动态特性。进一步理解进程生命期期间创建、变换、撤销状态变换的过程。掌握进程控制的方法,了解父子进程间的控制和协作关系。练习 Linux 系统中进程创建与控制有关的系统调用的编程和调试技术。
1.2 实验说明
1)与进程创建、执行有关的系统调用说明 进程可以通过系统调用fork()创建子进程并和其子进程并发执行.子进程初始的执行映像是父进程的一个复本.子进程可以通过
exec()系统调用族装入一个新的执行程序。父进程可以使用 wait()或 waitpid()系统调用等待子进程的结束并负责收集和清理子进程的退出状态。
fork()系统调用语法:
#include pid_t
fork(void);
fork 成功创建子进程后将返回子进程的进程号,不成功会返回-1.
exec 系统调用有一组 6 个函数,其中示例实验中引用了 execve 系统调用语法:
#include
int execve(const char *path, const char *argv[], const char * envp[]); path 要装入的新的执行文件的绝对路径名字符串.
argv[] 要传递给新执行程序的完整的命令参数列表(可以为空).
envp[] 要传递给新执行程序的完整的环境变量参数列表(可以为空). Exec 执行成功后将用一个新的程序代替原进程,但进程号不变,它绝不会再返回到调用进程了。如果 exec 调用失败,它会返回-1。
wait() 系统调用语法:
#include
#include pid_t
wait(int *status);
第3章 进程描述和控制
复习题:
3.1 什么是指令跟踪?
答:指令跟踪是指为该进程而执行的指令序列。
3.2 通常那些事件会导致创建一个进程?
答:新的批处理作业;交互登录;操作系统因为提供一项服务而创建;由现有的进程派生。(详情请参考表3.1)
3.3 对于图3.6中的进程模型,请简单定义每个状态。
答:运行态:该进程正在执行。就绪态:进程做好了准备,只要有机会就开始执行。阻塞态:进程在某些事件发生前不能执行,如I/O操作完成。新建态:刚刚创建的进程,操作系统还没有把它加入到可执行进程组中。退出态:操作系统从可执行进程组中释放出的进程,或者是因为它自身停止了,或者是因为某种原因被取消。
3.4 抢占一个进程是什么意思?
答:处理器为了执行另外的进程而终止当前正在执行的进程,这就叫进程抢占。
3.5 什么是交换,其目的是什么?
答:交换是指把主存中某个进程的一部分或者全部内容转移到磁盘。当主存中没有处于就绪态的进程时,操作系统就把一个阻塞的进程换出到磁盘中的挂起队列,从而使另一个进程可以进入主存执行。
3.6 为什么图3.9(b)中有两个阻塞态?
答:有两个独立的概念:进程是否在等待一个事件(阻塞与否)以及进程是否已经被换出主存(挂起与否)。为适应这种2*2的组合,需要两个阻塞态和两个挂起态。
3.7 列出挂起态进程的4个特点。
答:1.进程不能立即执行。2.进程可能是或不是正在等待一个事件。如果是,阻塞条件不依赖于挂起条件,阻塞事件的发生不会使进程立即被执行。3.为了阻止进程执行,可以通过代理把这个进程置于挂起态,代理可以是进程自己,也可以是父进程或操作系统。4.除非代理显式地命令系统进行状态转换,否则进程无法从这个状态中转移。
3.8 对于哪类实体,操作系统为了管理它而维护其信息表?
答:内存、I/O、文件和进程。
3.9 列出进程控制块中的三类信息。
答:进程标识,处理器状态信息,进程控制信息。
信息技术教案:进程的描述与控制
进程的描述与控制
一、前驱图和程序执行
1.前驱图的定义。(略)
2.程序顺序执行
⑴程序顺序执行概念
⑵程序顺序执行的特征:顺序性、封闭性、可再现性
封闭性:所谓封闭性是指程序一旦开始执行,其执行过程不受任何外界因素影响。
顺序性:当程序在处理机上执行时,处理机的操作严格按照程序所规定的顺序执行。
确定性:其程序执行结果与执行速度、时间的无关性。
可再现性:指程序对一组数据的重复执行必得到相同的结果。
3.程序并发执行
⑴程序并发执行
使一个程序分成若干个可同时执行的程序模块的方法成为并发程序设计,能够并发执行的程序成为并发程序。
⑵程序顺序执行的特征:间断性、失去封闭性、不可再现性(举例说明)
4.并发程序与顺序程序的比较
顺序程序
并发程序
执行过程
顺序执行
并发执行
程序与执行对应 一一对应
一个程序可对应多个执行
封闭性
独占资源,具有封闭性
共享资源,不具有封闭性
确定性
具有
无
可再现性
具有
无
程序间关系
无
有间接制约或直接制约关系
5.程序并发执行的条件(保持可再现性)
两段程序间无共享变量或对共享变量仅有读操作。
二、进程的描述
1.进程的引入和定义
⑴进程引入的原因
进程:操作系统中最基本、最重要的概念
多道程序设计出现以后,为了刻划系统内部出现的情况,描述系统内部各作业的活动规律引入的。
多到系统的特点:并行性、程序间的制约、动态特征
程序是静态的,不能并行
⑵进程的定义
通用定义:(举例解释)
操作系统第⼆章进程的描述与控制题⽬
1-1. 下⾯对进程的描述中,错误的是 。
A.进程是动态的概念 B. 进程执⾏需要处理机
C.进程是有⽣命周期的 D. 进程是指令的集合
【答案】D
【解析】【解析】程序是指令的集合。⽽进程是程序的⼀次执⾏,是动态的,有⽣命周期的。动态的,有⽣命周期的。1-2. 分配到必要的资源并获得处理机时的进程状态是 ()
A. 就绪状态 B. 执⾏状态 C. 阻塞状态 D. 撤消状态
【答案】B
【解析】分配到必要地资源获得处理机时的进程状态是执⾏状态。1-3.程序的顺序执⾏通常在 ① 的⼯作环境中,具有以下特征 ② 。
程序的并发执⾏在 ③ 的⼯作环境中,具有如下特征 ④ 。A. 单道程序 B.多道程序 C. 程序的可再现性 D. 资源共享
【答案】①A ②C ③B ④D。
【解析】程序的顺序执⾏通常在单道程序的⼯作环境中,具有程序结果的可再现性特征;
程序的并发执⾏在多道程序的⼯作环境中,具有共享资源的特征。1-4. 下列进程状态变化中, 变化是不可能发⽣的
A. 运⾏——就绪 B.运⾏—— 等待 C. 等待——运⾏ D. 等待——就绪
【答案】C 【解析】当调度程序为某就绪状态的进程分配了处理机时,该进程便由就绪状态变为执⾏状态;正在执⾏的进程因等待发⽣某事件⽽⽆法执⾏时,该进程由执⾏状态变为等待状态;当处于等待状态的进程所等待的事件发⽣时,该进程由等待状态变为就绪状态;正在执⾏的进程如因时间⽚⽤完⽽暂停执⾏,该进程由执⾏状态变为就绪状态。
等待——运⾏运⾏不可能发⽣,就绪不可能发⽣,就绪—— 等待不可能发⽣。
唯⼀的双向箭头是唯⼀的双向箭头是运⾏运⾏——就绪 ,就绪——运⾏ 1-5. 当 时,进程从执⾏状态转变为就绪状态。
A. 进程被调度程序选中 B. 时间⽚到
C. 等待某⼀事件 D.等待的事件发⽣
【答案】B。 【解析】正在执⾏的进程,如因时间⽚⽤完⽽暂停执⾏,则该进程由执⾏状态转变为就绪状态。