如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
第2章进程管理2.1进程的基本概念2.2进程控制2.3进程的互斥与同步2.4进程的调度2.5进程通信2.6死锁2.7线程2.8Linux中的进程管理2.1进程的基本概念2.1.1程序的顺序执行和并发执行在多道程序设计出现以前,程序的最大特性是“顺序性”,即程序的顺序执行。一个程序通常由若干个程序段组成,它们必须按照某种先后次序执行,前一个操作执行完后,才能执行后继操作,这种计算过程即程序的顺序执行过程。程序顺序执行时的特性:(1)顺序性(2)封闭性(3)可再现性2.多道程序设计的引入(1)独立性。在多道环境下执行的每道程序都是逻辑上独立的,它们之间不存在逻辑上的制约关系,也就是说,如果有充分的资源保证,则每道程序都可以独立执行。(2)随机性。在多道程序环境下,特别是在多用户环境下,程序和数据的输入与执行的开始时间都是随机的。输入与程序执行开始时间的随机性形成了操作系统必须同时处理多道程序的客观要求。(3)资源共享。任何一个计算机系统中的软、硬件资源都是有限的,一般来说,多道环境下执行程序的道数总是要超过计算机系统中CPU的个数,单CPU系统更是如此。显然,受CPU个数的限制,由随机性引起的需同时执行的多道程序只能共享系统中已有的CPU。同理,输入输出设备有限将导致这些设备被共享,内存有限将导致内存被共享等。3.程序的并发执行程序的并发执行提高了系统的吞吐量,也产生了一些与顺序执行不同的新特点:制约性失去封闭性不可再现性2.1.2进程的定义与特征2.进程的特征3.进程的结构进程控制块进程控制块的组成4.进程和程序的区别2.1.3进程的状态及其转换进程的基本状态2.2进程控制1.进程创建2.进程撤销3.进程阻塞4.进程唤醒2.3进程的互斥与同步2.3.1互斥的定义临界资源的访问必须遵循的准则:2.3.2同步的定义进程的同步与互斥的不同之处:2.3.3信号量机制2.P、V操作的定义P(S)原语操作V(S)原语操作2.3.4用P、V操作实现进程的互斥2.3.5用P、V操作实现进程的同步★生产者——消费者问题图2.8生产者——消费者问题2.4进程的调度1.调度的类型(1)作业调度。又称宏观调度或高级调度。(2)进程调度。又称微观调度或低级调度(3)交换调度。又称中级调度。2.进程调度方式(1)剥夺方式(2)非剥夺方式剥夺方式非剥夺方式3.进程调度算法(1)先来先服务(FCFS)调度算法(2)短进程优先(SPF)调度算法(3)高优先级优先(HPF)调度算法在采用高优先级优先调度算法的系统中,进程的优先级对进程的调度至关重要,因为优先级的高低将直接影响到就绪进程被调度执行的次序。进程的优先级可采用静态优先级和动态优先级两种,优先级可由用户自定或由系统确定。静态优先级在创建进程时确定,确定后在整个进程运行期间不再改变。动态优先级指在创建进程时,根据系统资源的使用情况和进程的当前特点确定一个优先权,在进程运行过程中再根据情况的变化调整优先权。(4)时间片轮转调度(RR)算法(5)多级反馈队列调度算法①系统按优先级设置n个就绪进程队列,第一级队列的优先级最高,其余队列的优先级逐个降低,第N级队列的优先级最低。②每个就绪队列对应有一个时间片Si(i=1,2,3,…,n),且有S1<S2<S3<…<Sn。③除第n个队列按RR法调度外,其余各个队列均按FCFS调度。④当一个新进程被建立后首先进入第一队列末尾,按FCFS原则排队等待调度。当轮到该进程执行时,如能在时间片S1内完成,便可准备撤离系统;如果它在一个时间片结束时尚未完成,调度程序便将该进程转入第二个队列的末尾,同样地按FCFS原则等待调度执行;如果它在第二个队列中运行一个时间片S2后仍未完成,再将它转入第三个队列末尾,按FCFS原则排队等待调度执行。如此下去,当一个长进程从第一个队列降到第N队列后,在第N队列中便采用RR法调度运行。⑤由于第一级队列的优先级最高,其余队列的优先级逐个降低,第N级队列的优先级最低,所以仅当第一个队列空闲时,调度程序才调度第二个队列的进程运行;一般仅当1~(i-1)队列均空时,才会调度第i个队列中的进程运行。如果处理机正在为第i队列中的某进程服务时,又有新进程进入优先级较高的队列(第1~(i-1)中任何一个队列),则此时新进程将剥夺正在运行进程的处理机,调度程序把正在运行进程送回第i个队列末尾,重新把处理机分配给优先级较高的队列中的新进程。2.5进程通信共享存储器系统为了传送大量数据,在存储器中划出一块共享存储区,诸进程可通过对共享存储区进行读数据或写数据以实现通信。2.消息通信传递系统3.管道通信系统2.6死锁2.6.1死锁的定义2.6.2★产生死锁的原因和必要条件2.死锁产生的必要条件2.6.3死锁的防止与避