进程的基本概念(操作系统)
创始人
2024-03-31 10:20:02
0

目录

一、程序的顺序执行及其特征

二、程序的并发执行及其特征

三、进程的特征与状态

1、进程的定义和特征

2、进程的三种基本状态

3、进程的三种基本状态的转换

4、 挂起状态

四、进程控制块(PCB)

1.  PCB作用: PCB是进程存在的唯一标志

2.进程控制块中的信息

1)进程标识符

2)处理机状态

3)进程调度信息

4)进程控制信息

3.进程控制块的组织方式

1)链接方式

 2)索引方式


 

一、程序的顺序执行及其特征


顺序执行包含两层含义:


在单道批处理系统中,对于多个用户程序来说,所有程序是依次执行的。(外部顺序性)

对于一个程序来说,在若干个程序段之间,必须按照某种先后次序顺序执行;对同一个程序段中的多条指令,也是按某种顺序执行的。(内部顺序性)

程序的顺序执行主要是指第一种,即各个程序依次执行。

程序顺序执行的特征


1)顺序性: 处理机的操作严格按照程序所规定的顺序执行,即每一操作必须在下一操作开始之前结束(或者说下一操作必须在当前操作结束后才能开始)。

2)封闭性:程序是在封闭的环境下执行的。即

程序运行时独占全机资源,资源的状态(除初始态外)只有本程序才能改变它。 程序一旦开始执行, 其执行结果不受外界影响。 3)可再现性:只要程序执行时的环境和初始条件相同,当程序重复执行时,都将获得相同的结果。

二、程序的并发执行及其特征


程序的并发执行包括两层含义:


对于一个程序来说,它的所有指令是按序执行的。(内部顺序性 对于多个执行中的程序(进程)来说,所有进程是交叉执行的。(外部并发性)

1间断性:程序在并发执行时,由于它们共享系统资源,以及为完成同一任务而相互合作,致使这些并发执行的程序之间形成了相互制约的关系。(互斥关系、同步关系)

2失去封闭性:程序在并发执行时,由于多个程序共享系统资源,因而这些资源的状态将由多个程序来改变,致使程序的运行已失去了封闭性。——某程序的执行时,会受到其他程序的影响。

3)不可再现性——与时间有关的错误  程序在并发执行时,由于失去了封闭性,也将导致其失去可再现性。(如果我们换个时间认识,那可能结果会不同)

三、进程的特征与状态


1、进程的定义和特征


        进程是程序在一个数据集上的运行过程,是系统进行资源分配和调度的一个独立单位。 (传统OS中对进程的定义)

进程的特征:

1)结构特征:程序段、相关的数据段、PCB三部分构成了进程实体

2)动态性:进程的实质是进程实体的一次执行过程,故动态性是进程的最基本特征。

3)并发性:这是指多个进程实体同存于内存中,且能在一段时间内同时运行。

4)独立性 :在传统的OS中,独立性是指进程实体是一个能独立运行、独立分配资源和独立接受调度的基本单位。

5)异步性 :是指进程按各自独立的、不可预知的速度向前推进,或说进程实体按异步方式运行。

2、进程的三种基本状态


1)就绪(Ready)状态:当进程已分配到除CPU以外的所有资源后,只要再获得CPU,便可立即执行,进程这时的状态称为就绪状态。

2)执行(Running)状态:进程已获得CPU,其程序正在执行

3)阻塞(Blocked)状态: 正在执行的进程由于发生某事件而暂时无法继续执行时,便放弃处理机而处于暂停状态,亦即进程的执行受到阻塞,把这种暂停状态称为阻塞状态(或等待状态)。

3、进程的三种基本状态的转换


引起进程状态转换的典型事件:

进程调度:就绪态->执行态

时间片完:执行态->就绪态

请求I/O:执行态->阻塞态

I/O完成:阻塞态->就绪态  

4、 挂起状态


有些系统除了进程的三种基本状态外,还有挂起状态。

1引入挂起状态的原因

(1)终端用户的请求:当终端用户在自己的程序运行期间发现有可疑问题时,希望暂停执行。

(2)父进程请求:希望考察和修改子进程,或协调各子进程间的活动时

(3)负荷调节的需要 实时系统中工作负荷较重时,系统可把一些不重要的进程挂起。

(4)操作系统的需要 :操作系统有时希望挂起某些进程,以便检查运行中的资源使用情况或进行记账。

2)具有挂起状态系统的进程状态的转换

活动(Active)就绪→静止(Suspend)就绪

活动阻塞→静止阻塞

静止就绪→活动就绪

静止阻塞→活动阻塞

四、进程控制块(PCB)


为了描述和控制进程的运行,系统为每个进程定义了一个数据结构——进程控制块。

进程控制块是进程实体的一部分,是操作系统中最重要的记录型数据结构

1.  PCB作用: PCB是进程存在的唯一标志


        使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能与其它进程并发执行的进程。或者说,OS是根据PCB来对并发进程进行控制和管理的。

例如:进程调度;现场保护和恢复;进程同步和通信。

2.进程控制块中的信息


        PCB中记录了操作系统所需的、用于描述进程当前情况以及控制进程运行的全部信息。具体包括下述四方面的信息:

1)进程标识符:


内部标识符(进程号)外部标识符()

父进程标识及子进程标识;用户标识

2)处理机状态:


        处理机状态信息主要由处理机的各种寄存器中的内容组成的。寄存器包括:通用寄存器、指令计数器、程序状态字(PSW)寄存器、用户栈指针。(保护、恢复现场)

当处理机被中断时,这些信息都必须保存到PCB中,以便该进程重新执行时,能从断点继续执行。

3)进程调度信息:


PCB中还存放一些与进程调度和进程对换有关的信息。包括:

进程状态——作为调度和对换时的依据。 进程优先级——由于描述进程使用处理机的优先级别的一个整数,优先级高的进程优先获得处理机。 进程调度所需的其它信息——它们与所采用的进程调度算法有关。

事件——即阻塞原因。

4)进程控制信息:


程序和数据的地址——指程序和数据所在的内存或外存首地址; 进程同步和通信机制——如信号量、消息队列指针等,它们可能全部或部分地存放在PCB中; 资源清单——是一张列出了除CPU外的、进程所需的全部资源及已经分配到该进程的资源的清单; 链接指针——它给出本进程(PCB)所在队列中下一个进程的PCB的首址。

3.进程控制块的组织方式


常用的组织方式有两种:链接方式索引方式

1)链接方式


把具有同一状态的PCB,用其中的链接字链接成一个队列。形成:就绪队列阻塞队列空白队列

 2)索引方式


系统根据所有进程的状态建立几张索引表。如,

  就绪索引表

  阻塞索引表等

 

索引表的首址记录在专用单元中;

▲每个索引表的表目中,记录具有相应状态的某个PCB的首址。  

相关内容

热门资讯

监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
Fluent中创建监测点 1 概述某些仿真问题,需要创建监测点,用于获取空间定点的数据࿰...
educoder数据结构与算法...                                                   ...
MySQL下载和安装(Wind... 前言:刚换了一台电脑,里面所有东西都需要重新配置,习惯了所...
MFC文件操作  MFC提供了一个文件操作的基类CFile,这个类提供了一个没有缓存的二进制格式的磁盘...
有效的括号 一、题目 给定一个只包括 '(',')','{','}'...
【PdgCntEditor】解... 一、问题背景 大部分的图书对应的PDF,目录中的页码并非PDF中直接索引的页码...