第二节进程基本概念.ppt
第1页,共31页,星期日,2025年,2月5日进程模型的提出:MIT(麻省理工学院),60年代初期进程的概念进程的状态及其转换进程控制块(ProcessControlBlock)第2页,共31页,星期日,2025年,2月5日一、进程的概念1、进程定义:Process进程是具有独立功能的程序在某个数据集合上的一次运行活动,是系统进行资源分配和调度的独立单位。第3页,共31页,星期日,2025年,2月5日此定义包含有如下的含义:(1)进程是一个动态的概念,而程序是静态的;(2)进程包含了一个数据集合和运行其上的程序;(3)同一程序运行于若干不同的数据集合上时,它将属于若干个不同的进程,或者说,两个不同的进程可包含相同的程序;(4)系统分配资源是以进程为单位的,所以只有进程才可能在不同的时刻处于几种不同的状态,即等待、就绪、运行。(5)从微观上看,进程是轮换地占有处理机而运行的,从宏观上看,进程是并发地运行的。对进程定义的进一步分析第4页,共31页,星期日,2025年,2月5日2、进程的构成进程=PCB+程序+数据其中,PCB(processcontrolblock)为记录程序在并发系统中执行时的动态特性的数据结构。进程的这三部分构成进程在系统中存在和活动实体,称为--“进程映象”or“进程实体”。第5页,共31页,星期日,2025年,2月5日并发性:任何进程都可以同其他进程一起向前推进动态性:进程对应程序的执行;进程是动态产生,动态消亡的;进程在其生命周期内,在三种基本状态之间转换独立性:进程是CPU调度的一个独立单位异步性:每个进程都与其相对独立的不可预知的速度向前推进结构性:进程的组成:程序+数据+PCB3、进程的特征第6页,共31页,星期日,2025年,2月5日进程是动态的,程序是静态的:程序是有序代码的集合;进程是程序的执行。通常进程不可在计算机之间迁移;而程序通常对应着文件、静态和可以复制。进程是暂时的,程序的永久的:进程是一个状态变化的过程,程序可长久保存。进程与程序的组成不同:进程的组成包括程序、数据和进程控制块(即进程状态信息)。进程与程序的对应关系:通过多次执行,一个程序可对应多个进程;通过调用关系,一个进程可包括多个程序。4、程序与进程之间的区别第7页,共31页,星期日,2025年,2月5日系统进程系统进程起着资源管理和控制的作用。或者:执行操作系统核心代码的进程。用户进程:执行用户程序的进程。(系统进程优先于用户进程)另一种分类:计算进程,I/O进程等。5、进程的分类第8页,共31页,星期日,2025年,2月5日1、系统进程被分配一个初始的资源集合,这些资源可以为它独占,也能以最高优先权的资格使用。用户进程通过系统服务请求的手段竞争使用系统资源;2、用户进程不能直接做I/O操作,而系统进程可以做显式的、直接的I/O操作。3、系统进程在系统态(管态)下活动,而用户进程则在用户态(目态)下活动。(当中央处理器处于管态时,可以执行包括特权指令在内的一切面器指令,而在目态下工作时不允许执行特权指令。)系统进程与用户进程的区别第9页,共31页,星期日,2025年,2月5日二、进程的状态及其转换不同系统设置的进程状态数目不同1、三状态模型: 进程的三种基本状态:运行状态、就绪状态、等待(阻塞)状态。 进程在生命消亡前总是处于且仅处于三种基本状态之一。 第10页,共31页,星期日,2025年,2月5日运行态(Running):当进程由调度/分派程序(Dispatcher)分派后,进程占有CPU,并在CPU上运行。(注意:在系统中,总只有一个进程处于此状态)就绪态(Ready):一个进程已经具备运行条件,但由于无CPU暂时不能运行的状态(当调度给其CPU时,立即可以运行)等待态(Blocked):阻塞态、挂起态、封锁态冻结态、睡眠态指进程因等待某种事件的发生(请求I/O、申请缓冲空间等)而暂时不能运行的状态(注意:即使CPU空闲,该进程也不可运行)第11页,共31页,星期日,2025年,2月5日在进程运行过程中,由于进程自身进展情况及外界环境的变化,这三种基本状态可以依据一定的条件相互转换?就绪—运行?运行—就绪?运行—等待?等待—就绪运行就绪等待进程的状态及其转换????进程状态转换:第12页,共31页,星期日,2025年,2月5日就绪--运行调度程序选择一个新的进程运行运行--就绪运行进程用完了时间片运行进程