《操作系统》课程教学资源(PPT课件)第2章 进程管理

第二章进程管理·认识进程前趋图和程序设计·进程·进程间的相互作用·进程间的通信进程调度(CPU调度)·线程
第二章 进程管理 • 认识进程 •前趋图和程序设计 • 进程 • 进程间的相互作用 • 进程间的通信 • 进程调度(CPU调度) • 线程

认识进程(Unix/Linux中的进程)·进程标识符PID(ProcessIDentifier):系统中每个进程的一个编号·两个基本的系统调用:forkO和getpidO·ForkO返回值:返回值0表示子进程,否则把子进程的标识符返回给父进程·Getpid:获得进程标识符
认识进程(Unix/Linux中的进程) •进程标识符PID (Process IDentifier): 系统中每个进程的一个编号 •两个基本的系统调用:fork()和getpid() •Fork()返回值:返回值0表示子进程,否 则把子进程的标识符返回给父进程 •Getpid:获得进程标识符

认识进程(简单程序)#include<sys/types.h)#include<unistd.h)Main(){printf("PID beforeforkO:%d\n",(int)getpid);if(fork()printf("Parent PID:%d)n,(int)getpid)elseprintf("Child PID :%d\n", (int)getpid)
认识进程(简单程序) #include #include Main() { printf(“PID before fork():%d\n”,(int)getpid); if(fork()) printf(“Parent PID :%d\n”,(int)getpid) else printf(“Child PID :%d\n”,(int)getpid)

认识进程(输出结果)一种可能的输出结果:$ forktestPID before forkO:490Parnet PID:490Child PID:491
认识进程(输出结果) 一种可能的输出结果: $ forktest PID before fork():490 Parnet PID:490 Child PID:491

2.1前趋图和程序设计前趋图的定义·程序顺序执行·并发程序执行·多道程序设计
2.1 前趋图和程序设计 • 前趋图的定义 • 程序顺序执行 • 并发程序执行 • 多道程序设计

2.1.1前趋图的定义前趋图(procedencegraph)是一个有向无环图DAG(directedacyclicgraph)。图中的每一个顶点可表示一条语句、一个程序段或进程,弧则表示两顶点之间的偏序(partialorder)或前趋关系(procedencerelation)。无前趋的顶点为初始顶点,无后继的顶点称为终止顶点,每个顶点还有一个权值,它表示顶点执行所需的时间。如2它的每一种拓扑排序都是顺序执行时正确得到结果的顺序,有路经的两顶点必须按前趋关系顺序执行,无路经的两顶点则可以并发执行
2.1.1 前趋图的定义 前趋图(procedence graph)是一个有向无环图 DAG (directed acyclic graph)。图中的每一个顶点可 表示一条语句、一个程序段或进程, 弧则表示两顶点 之间的偏序(partial order)或前趋关系(procedence relation)。无前趋的顶点为初始顶点,无后继的顶点 称为终止顶点, 每个顶点还有一个权值, 它表示顶点 执行所需的时间。如 1 3 5 2 4 6 7 它的每一种拓扑排序都是顺序执行时正确得到结 果的顺序,有路经的两顶点必须按前趋关系顺序执行, 无路经的两顶点则可以并发执行

2.1.2程序顺序执行程序顺序执行:程序执行时,必须按某种先后次序,只有当前操作完成后才能执行后继操作,它体现了某种算法。如:Si: a:=x+y;前趋图S2: b:=a-5;S3: c:=b+1;各程序段与此相同,以ICP分别代表输入计算和输出则前趋图:
2.1.2 程序顺序执行 程序顺序执行: 程序执行时, 必须按某种先后次序, 只有当前操作 完成后才能执行后继操作, 它体现了某种算法。如: S1: a:=x+y; S2: b:=a-5; S3: c:=b+1; 各程序段与此相同, 以 I C P分别代表输入计算和输出, 则前趋图: 前趋图 S1 S2 S3 I1 C1 P1 I2 C2 P2

程序顺序执行的特征:程序执行的顺序性:严格按所规定的顺序执行·程序执行的封闭性独占资源,执行过程和结果不受其它程序的影响·程序结果的可再现性(结果的确定性)只要初始状态相同,程序多次重复运行,其结果与程序执行速度无关(连续或间断),结果都应相同
程序顺序执行的特征: • 程序执行的顺序性:严格按所规定的顺序执行 • 程序执行的封闭性 独占资源,执行过程和结果不受其它程序的影响 • 程序结果的可再现性(结果的确定性) 只要初始状态相同,程序多次重复运行,其结果与 程序执行速度无关(连续或间断),结果都应相同

2.1.3程序并发执行多个程序并发执行:在一定时间内物理机器上有两个或两个以上的程序同处于开始运行但尚未结束的状态,并且次序不是事先确定的。宏观上同时处于运行状态微观上各程序交替地间断运行。前趋关系:ZIi-→Ci, Pi-Pi+1Ci-Pi, I-li+1Ci→Ci+1Ii+1, Ci, Pi-1P1P4是重叠的
2.1.3 程序并发执行 多个程序并发执行: 在一定时间内物理机器上有两个或两个以上 的程序同处于开始运行但尚未结束的状态,并且 次序不是事先确定的。宏观上同时处于运行状态 微观上各程序交替地间断运行。 I1 I2 I3 I4 C1 C2 C3 C4 P1 P2 P3 P4 前趋关系: Ii→Ci , Pi→Pi+1 Ci→Pi , Ii→Ii+1 Ii+1, Ci, Pi-1 Ci→Ci+1 是重叠的

·举例说明:假如系统中有两道程序AA和BB:program AA;program BB;beginbeginANB-NN:=N+1;A<←A+1N:=N+1:B-B+1LNALNBEnd;end;intN=1:是AA和BB都能访问的外部公共变量.这两个程序在并发执行,N:=N+1;可分解为3条机器指令,它们的执行顺序不同有可能导致N的值结果不同
• 举例说明: 假如系统中有两道程序AA和BB: program AA; program BB; begin begin . A←N . B←N N:=N+1; A←A+1 N:=N+1; B←B+1 . N←A . N←B End; end; int N=1; 是AA和BB都能访问的外部公共变量,这两 个程序在并发执行, N:=N+1;可分解为3条机器指令,它 们的执行顺序不同有可能导致N的值结果不同
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《操作系统》课程教学资源(PPT课件)第1章 操作系统引论.ppt
- 《操作系统》课程教学资源(试卷习题)第七章 设备管理(试题).doc
- 《操作系统》课程教学资源(试卷习题)第七章 设备管理(答案).doc
- 《操作系统》课程教学资源(试卷习题)第六章 文件管理(试题).doc
- 《操作系统》课程教学资源(试卷习题)第六章 文件管理(答案).doc
- 《操作系统》课程教学资源(试卷习题)第五章 存储管理(试题).doc
- 《操作系统》课程教学资源(试卷习题)第五章 存储管理(答案).doc
- 《操作系统》课程教学资源(试卷习题)第四章 处理机调度(答案).doc
- 《操作系统》课程教学资源(试卷习题)第四章 处理机调度(试题).doc
- 《操作系统》课程教学资源(试卷习题)第三章 进程管理(试题).doc
- 《操作系统》课程教学资源(试卷习题)第三章 进程管理(答案).doc
- 《操作系统》课程教学资源(试卷习题)第二章 操作系统用户界面(答案).doc
- 《操作系统》课程教学资源(试卷习题)第二章 操作系统用户界面(试题).doc
- 《操作系统》课程教学资源(试卷习题)第一章 绪论(答案).doc
- 《操作系统》课程教学资源(试卷习题)第一章 绪论(试题).doc
- 《操作系统》课程教学资源(试卷习题)08-09-2卷(试题).doc
- 《操作系统》课程教学资源(试卷习题)08-09-2卷(答案).doc
- 《操作系统》课程教学资源(试卷习题)08-09-1卷(试题).doc
- 《操作系统》课程教学资源(试卷习题)08-09-1卷(答案).doc
- 《操作系统》课程教学资源(试卷习题)07-08-2卷(答案).doc
- 《操作系统》课程教学资源(PPT课件)第3章 处理机调度与死锁.ppt
- 《操作系统》课程教学资源(PPT课件)第4章 存储器管理.ppt
- 《操作系统》课程教学资源(PPT课件)第6章 文件管理.ppt
- 《操作系统》课程教学资源(PPT课件)第5章 设备管理.ppt
- 《操作系统》课程教学资源(PPT课件)第7章 操作系统接口.ppt
- 《网络操作系统》课程教学资源(PPT课件)第二章 Linux终端操作.ppt
- 《网络操作系统》课程教学资源(PPT课件)第一章 建立Linux系统.ppt
- 《网络操作系统》课程教学资源(PPT课件)第三章 用户管理及组管理.ppt
- 《网络操作系统》课程教学资源(PPT课件)第四章 Linux服务与进程管理.ppt
- 《网络操作系统》课程教学资源(PPT课件)第五章 软件包管理.ppt
- 《网络操作系统》课程教学资源(PPT课件)第六章 配置网络连接.ppt
- 《网络操作系统》课程教学资源(PPT课件)第八章_VSFTP.ppt
- 《网络操作系统》课程教学资源(PPT课件)第七章_Linux服务器的配置.ppt
- 《网络操作系统》课程教学资源(PPT课件)第九章 DNS及DHCP服务器.ppt
- 《网络操作系统》课程教学资源(PPT课件)第十章 Linux防火墙Iptables.ppt
- 《网络操作系统》课程教学资源(PPT课件)第十一章 LInux远程登录.ppt
- 《Linux操作系统原理与应用》课程教学课件(PPT讲稿)第二章 虚拟内存管理的硬件机制.ppt
- 《Linux操作系统原理与应用》课程教学课件(PPT讲稿)第一章 操作系统概述.ppt
- 《Linux操作系统原理与应用》课程教学课件(PPT讲稿)第三章 进程.ppt
- 《Linux操作系统原理与应用》课程教学课件(PPT讲稿)第四章 内存管理.ppt