1.前趋图和程序执行
1.1、前趋图的定义
前趋图:有向无环图。
结点:表示操作、语句、程序段或进程。
边:操作之间的关系,偏序或前趋关系。
例:进程P1、P2、P3和P4的前趋图如下:
注:前趋图中必须不存在循环
1.2 并发程序设计及其执行
1.2.1、执行情况:与操作的静态描述不一定一致
例:①程序段
②多道程序环境下程序的并发执行
1.2.2、特征:
间断性
失去封闭性
不可再现性
1.2.3、程序并发执行的条件
引入Pi
R(Pi):程序Pi在执行期间所需参考的所有变量的集合-读集
W(Pi):程序Pi在执行期间所需改变的所有变量的集合-写集
则Pi与Pj能并发执行的条件:
R(Pi)∩ W(Pj)={} R(Pj)∩ W(Pi)={} W(Pi)∩ W(Pj)={}
亦即:
[R(Pi)∩ W(Pj)]∪[R(Pj)∩ W(Pi)]∪[W(Pi)∩ W(Pj)]= {}
若两个程序能满足上述条件,它们便能并发执行,且具有可再现性。该条件又称为Bernstein条件。
2.进程的描述
2.1 进程的定义和特征
引入:为描述并发下程序的执行情况
定义:进程是程序的一次执行过程,是系统进行资源分配和处理机调度的一个独立单位。
结构特性:进程=程序段+数据段+PCB
2.2 进程和程序的区别与联系
①进程是一个动态的概念;程序是一个静态的概念;
②进程具有并发性,而程序没有;
③进程是资源分配和处理机调度的独立单位,其并发性受系统制约;
④一个程序,多次执行,对应多个进程;不同的进程可以包含同一程序。
2.3进程的三种基本状态
1、就绪状态(ready):等处理机
2、执行状态(running):用处理机
3、阻塞状态(blocked):等事件
2.3基本状态演变图
2.4具有挂起操作的进程状态演变图
挂起:所谓“挂起”,就是使正在活动的进程(或执行、或就绪、或阻塞)处于静止状态,此时系统回收被这些进程占用的内存资源。
2.5 进程控制块PCB
2.5.1PCB的作用
1、OS根据PCB来对并发执行的进程进行控制和管理
2、PCB是进程存在的唯一标志
从PCB在进程的生命周期中起的作用了解
3、PCB应常驻内存
2.5.2PCB的组织方式
1、链接方式
2、索引方式
3.进程控制
3.1进程控制
所谓进程控制,就是对系统中所有进程的生命历程实施控制。也即:进程控制是管理进程生灭及状态转换的程序的集合。
进程控制是OS内核实现的。
3.2操作系统的层次结构
3.2.1引入:
方便设计与维护,将操作系统分为不同层次,将操作系统的功能设置在不同的层次中。
3.2.2原则:
按调用关系分层,只有外层能调用内层;
与硬件关系密切的放在最里层;例如进程调度;
与用户关系密切的放在最外层;
3.3内核
3.3.1 在层次结构中最里层的程序模块集合。
即:内核是计算机硬件的第一层扩充软件
3.3.2 内核的基本功能
1、资源管理功能
进程管理、存储器管理、设备管理
2、支撑功能
中断处理、时钟管理、原语操作
3.3.3内核的实现
1、用原语实现
2、原语:由若干条机器指令构成的,完成特定功能的一段程序,其执行过程不可分割,就象一条指令一样。
本文转自willis_sun 51CTO博客,原文链接:http://blog.51cto.com/willis/1854336,如需转载请自行联系原作者