欢迎来到天天文库
浏览记录
ID:52253623
大小:505.98 KB
页数:40页
时间:2020-03-25
《中科大操作系统原理与实现课件3_Processes0.pdf》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、操作系统原理与设计第3章Processes(进程)1陈香兰中国科学技术大学计算机学院2009年09月01日......提纲多道程序技术和程序并发执行的条件多道程序技术的难点程序的顺序执行程序的并发执行ProcessConcepttheProcessProcessStateProcessControlBlock(PCB)小结和作业......Outline多道程序技术和程序并发执行的条件多道程序技术的难点程序的顺序执行程序的并发执行ProcessConcepttheProcessProcessStateProcessControlBlock(PCB)小结和
2、作业......多道程序技术I从单道!多道I内存必须被多个“程序”共享ICPU必须被多个“程序”复用I操作系统必须具备4大基本功能:I处理器管理I内存管理II/O管理I文件管理......容易混淆的几个基本术语IProgram,程序;Tasks,任务Jobs,作业;Processes,进程I本课程中关于上述几个术语的界定I程序:静态的代码序列,通常以文件为存储介质。代码可以是高级语言的、汇编语言的、指令序列等等。I任务:泛指。I作业:批处理系统中,等待装入内存执行的用户程序和数据。I进程:已经被装载到内存中运行的程序及其外延......多道程序技术的难点
3、I与单道相比,在多道系统中,进程之间的运行随着调度的发生而具有无序性,那么I如何保证正确的并发?I相关理论:I程序并发执行的条件I理论模型:前趋图I基于前趋图的程序顺序执行分析I基于前趋图的程序并发执行分析......PrecedenceGraph前驱图II目的:准确的描述语句、程序段、进程之间的执行次序Definition前趋图是一个有向无环图DAG(DirectedAcyclicGraph)I结点:一个执行单元(如一条语句、一个程序段或进程)I(有向)边:前驱关系“!”,{}!=(Pi;Pj)jPi必须在Pj开始执行前执行完I若(Pi;Pj)2!,可写
4、成Pi!Pj其中,称Pi是Pj的前驱,而Pj是Pi的后继......PrecedenceGraph前驱图III没有前趋的结点称为初始结点(initialnode)I没有后继的结点称为终止结点(finalnode)I结点上使用一个权值(weight)表示该结点所含的程序量或结点的执行时间I前趋图举例:......PrecedenceGraph前驱图III......Outline多道程序技术和程序并发执行的条件多道程序技术的难点程序的顺序执行程序的并发执行ProcessConcepttheProcessProcessStateProcessControlBl
5、ock(PCB)小结和作业......程序的顺序执行II一个较大的程序通常包含若干个程序段。程序在执行时,必须按照某种先后顺序逐个执行,仅当前一个程序段执行完,后一个程序段才能执行。例如I其中II代表用户程序和数据的输入;IC代表计算;IP代表输出结果I在一个程序段中,多条语句也存在执行顺序的问题。在下面的例子中,S1和S2必须在S3执行前执行完。类似的,S4必须在S3执行完才能执行。IS1:a=x+3......程序的顺序执行IIIS2:b=y+4IS3:c=a+bIS4:d=a+c......程序顺序执行时的特征I顺序性I封闭性I可再现性......
6、Outline多道程序技术和程序并发执行的条件多道程序技术的难点程序的顺序执行程序的并发执行ProcessConcepttheProcessProcessStateProcessControlBlock(PCB)小结和作业......程序的并发执行IPi与Ii+1之间不存在内在的前趋关系I程序并发执行时的前趋图......程序并发执行时的特征I间断性I并发程序“执行--暂停执行--执行”I失去封闭性I由于资源共享,程序之间可能出现相互影响的现象I不可再现性I原因同上。I举例:变量N的共享,设某时刻N=n,则若执行顺序为:1.N:=N+1;print(N)
7、;N:=0;N的值依次为n+1;n+1;02.print(N);N:=0;N:=N+1;N的值依次为n;0;13.print(N);N:=N+1;N:=0;N的值依次为n;n+1;0......程序并发执行的条件(Bernstein条件)I在上述3个特性中,必须防止“不可再现性”。I为使并发程序的执行保持“可再现性”,引入并发执行的条件。I思路:分析程序或语句的输入信息和输出信息,考察它们的相关性I符号和术语定义:I读集R(pi),表示程序pi在执行时需要参考的所有变量的集合I写集W(pi),表示程序pi在执行期间要改变的所有变量的集合I1966,Ber
8、nstein:若两个程序p1和p2满足下列条件,则它们就能并发执行,且具有可再现
此文档下载收益归作者所有