3 进程线程模型(1)

1.多道程序设计

        所谓多道程序设计,就是允许多个程序同时进入内存并运行。多道程序设计是操作系统所采用的最基本、最重要的技术,其根本目的是提高整个系统的效率。采用多道程序设计可以提高CPU 的利用率。多道程序设计技术充分发挥了处理器与外围设备以及外围设备之间的并行工作能力,从而提高处理器和其他各种资源的利用率。从宏观上看,CPU 与外部设备始终可以并行工作,这样使得CPU 的运行效率达到最大化,不至于空闲。

2.多道程序设计环境特点

        ①独立性② 随机性③资源共享性

3.程序并发执行

        所谓程序并发执行,是指两个或两个以上程序在计算机系统中同处于已开始执行且尚未结束的状态。能够参与并发执行的程序称为并发程序。引入程序并发执行,是为了充分利用系统资源,提高计算机的处理能力。但是,程序并发执行产生了一些和程序顺序执行时不同的特性,概括如下:① 并发程序在执行期间具有相互制约关系;② 程序与计算不再一一对应;③ 并发程序执行结果不可再现

4.进程和程序的区别

        程序是构成进程的组成部分之一,一个进程的运行目标是执行它所对应的程序,如果没有程序,进程就失去了其存在的意义。进程是由程序数据进程控制块(PCB)3 部分组成。程序是静态的,进程是动态的。程序的存在是永久的,进程的存在是暂时的,动态地产生和消亡。一个进程可以执行一个或几个程序,一个程序亦可以构成多个进程。进程具有创建其他进程的功能。被创建进程称为子进程,创建者称为父进程,从而构成进程家族。程序是指令、数据及其组织形式的描述,进程是程序的实体;
         每一个进程都有它自己的地址空间,一般情况下,包括文本区域数据区域堆栈。 文本区域存储处理器执行的代码;数据区域存储变量和进程执行期间使用的动态分配的内存;堆栈区域存储着活动过程调用的指令本地变量

5.进程特性

(1)并发性:可以同其他进程一道向前推进,即一个进程的第一个动作可以在另一个进程的最后一个动作结束之前开始。
(2)动态性:进程对应程序的执行过程,体现在两方面:① 进程动态产生、动态消亡;② 在进程(3)独立性:一个进程是一个相对完整的资源分配单位。
(4) 交往性:一个进程在运行过程中可能会与其他进程发生直接的或间接的相互作用。
(5)异步性:每个进程按照各自独立的、不可预知的速度向前推进。

6.状态进程模型

         运行中的进程可以处于以下3 种状态之一:运行、就绪、等待。 在任何时刻,任何进程都处于且仅处于3 种状态之一。
(1)运行状态(Running):① 运行状态是指进程已获得CPU,并且在CPU 上执行的状态。② 在一个单CPU 系统中,最多只有一个进程处于运行态。
(2)就绪状态(Ready):① 就绪状态是指一个进程已经具备运行条件,但由于没有获得CPU 而不能运行所处的状态。② 一旦把CPU 分配给它,该进程就可运行。③ 处于就绪状态的进程可以是多个。
(3)等待状态(Waiting):① 等待状态也称阻塞状态或封锁状态。② 是指进程因等待某种事件发生而暂时不能运行的状态。③ 系统中处于等待状态的进程可以有多个。

7.五状态进程模型

         五状态进程模型中,进程状态被分成下列五种状态。进程在运行过程中主要是在就绪、运行和阻塞3 种状态间进行转换。创建状态和退出状态描述进程创建的过程和进程退出的过程。
        ① 运行状态(Runing):进程占用处理机资源;处于此状态的进程的数目小于等于处理机的数目。在没有其他进程可以执行时(如所有进程都在阻塞状态),通常会自动执行系统的空闲进程。
        ② 就绪状态(Ready):进程已获得除处理机外的所需资源,等待分配处理机资源;只要分配处理机就可执行。
        ③ 阻塞状态(Blocked):由于进程等待I/O 操作或进程同步等条件而暂停运行时处于阻塞状态。
        ④ 创建状态(New):进程正在创建过程中,还不能运行。
        ⑤ 结束状态(Exit):进程已结束运行,回收除进程控制块之外的其他资源,并让其他进程从进程控制块中收集有关信息(如记账和将退出代码传递给父进程)。

8.七状态模型

        (1)七状态进程模型把原来的就绪状态和阻塞状态进行了细分,增加了就绪挂起和阻塞挂起两个状态;这时原来的就绪状态和阻塞状态的意义也发生了一些变化:① 就绪状态(Ready):进程在内存且可立即进入运行状态;② 阻塞状态(Blocked):进程在内存并等待某事件的出现;③ 阻塞挂起状态(Blocked,Suspend):进程在外存并等待某事件的出现。④ 就绪挂起状态(Ready,Suspend):程在外存,但只要进入内存,即可运行;

        2) 在七状态进程模型中,新引入的状态转换有挂起和激活两类,意义有变化的转换有事件出现和进程提交两类。
        ⚫挂起(Suspend):把一个进程从内存转到外存;可能有以下几种情况:① 阻塞到阻塞挂起:没有进程处于就绪状态或就绪进程要求更多内存资源时,会进行这种转换,以提交新进程或运行就绪进程。② 就绪到就绪挂起:当有高优先级阻塞(系统认为会很快就绪的)进程和低优先级就绪进程时,系统会选择挂起低优先级就绪进程。③ 运行到就绪挂起:对抢先式分时系统,当有高优先级阻塞挂起进程因事件出现而进入就绪挂起时,系统可能会把运行进程转到就绪挂起状态。

        ⚫ 激活(Activate):把一个进程从外存转到内存;可能有以下几种情况:① 就绪挂起到就绪:就绪挂起进程优先级高于就绪进程或没有就绪进程时,会进行这种转换。② 阻塞挂起到阻塞:当一个进程释放足够内存时,系统会把一个高优先级阻塞挂起进程激活,系统认为会很快出现该进程所等待的事件。

        ⚫ 事件出现(Event Occurs):进程等待的事件出现;如操作完成、申请成功等;可能的情况有:① 阻塞到就绪:针对内存进程的事件出现。② 阻塞挂起到就绪挂起:针对外存进程的事件出现。

        ⚫ 提交(Admit):完成一个新进程的创建过程,新进程进入就绪状态或就绪挂起状态。进入就绪挂起的原因是系统希望保持一个大的就绪进程表(挂起和非挂起)。

9.进程控制块(Process Control Block,PCB)

        为了便于系统控制和描述进程的活动过程,在操作系统核心中为进程定义了一个专门的数据结构,称为进程控制块(Process Control Block,PCB)。PCB 是进程存在的唯一标志,当系统创建一个进程时,为进程设置一个PCB,再利用PCB 对进程进行控制和管理。 撤销进程时,系统收回它的PCB,进程也随之消亡。
         PCB 的内容可以分成调度信息和现场信息两大部分:① 调度信息供进程调度时使用,描述了进程当前所处的状况,它包括进程名、进程号、存储信息、优先级、当前状态、资源清单、“家族”关系、消息队列指针、进程队列指针和当前打开文件等。② 现场信息刻画了进程的运行情况,由于每个进程都有自己专用的工作存储区,其他进程运行时不会改变它的内容。所以,PCB 中的现场信息只记录那些可能会被其他进程改变的寄存器,如程序状态字、时钟、界地址寄存器等。一旦中断进程的运行,必须把中断时刻的内容记入PCB 的现场信息。

10.PCB 的3 种组织方式

        ①线性方式②索引方式③链接方式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值