1、第四章 进程管理n 多道程序设计n 进程n 进程间的相互作用n 进程间的通信n 进程(线程)调度( CPU调度)n 系统核心n 线程一、多道程序设计n 顺序程序n 并发程序n 多道程序设计1.顺序程序程序:指令或语句序列,体现了某种算法,所有程序是顺序的顺序环境:在计算机系统中只有一个程序在运行,这个程序独占系统中所有资源,其执行不受外界影响特征:n 程序执行的顺序性n 程序执行的封闭性独占资源,执行过程中不受外界影响n 程序执行结果的确定性即:程序结果的可再现性程序运行结果与程序执行速度无关,只要初始状态相同,结果应相同顺序程序(续)2.并发程序并发环境:在一定时间内物理机器上有两个或两个以
2、上的程序同处于开始运行但尚未结束的状态,并且次序不是事先确定的BAABBAAB特征:( 1)程序结果的不可再现性并发程序执行的结果与其执行的相对速度有关,是不确定的( 2)在并发环境下程序的执行是间断性的执行 停 执行并发程序(续 1)( 3)资源共享系统中资源被多个进程使用( 4)独立性和制约性独立的相对速度、起始时间进程之间可相互作用(相互制约)可分为直接作用和间接作用( 5)程序和计算不再一一对应(计算:一个程序的执行)并发程序(续 2)并发程序(续 3)引入并发的目的:引入并发是为了提高资源利用率,从而提高系统效率并发与并行概念的区别 :Concurrency, parallel在顺序环境下 CPU利用率 = 40/80 = 50%DEV1利用率 = 15/80=18.75%DEV2利用率 = 25/80=31.25% t(s) t(s) CPU DEV1DEV2CPU CPU A 10 15 20 30 40DEV2CPU DEV 1DEV2CPU B 10 20 30 40 25并发程序(续 4)在并发环境下 CPU利用 = 89%DEV1并发环境下利用 = 33%DEV2并发环境下利用 = 66%ABCPU DEV1 DEV2 CPUCPU10 15 20 30 40t(s)25DEV1 CPU35 45DEV2 CPU DEV2并发程序(续 5)