找回密码
 立即注册

微信扫码登录

使用验证码登录

搜索
查看: 46|回复: 0

04.第04节课第二章进程的描述与控制

[复制链接]

5158

主题

3

回帖

1万

积分

管理员

积分
15576
发表于 2024-4-15 08:30:20 | 显示全部楼层 |阅读模式
那么,接下来我们看一下过期操作和进程状态的转换,在许多进程当中,系统当中,进程除了就绪,执行和阻塞三种最基本的状态外。为了系统和用户观察时分析进程的需要,还引入了一个对进程的宗教操作。比如说我们就是我们的挂起操作。这个操作呢,作用于某个进程的时候呢,该进程呢,就被挂起,那么意味着此时的进程呢,处于静止状态。

如果进程呢?这个时候呢,正在执行,它将来就暂停执行,如果本来就处于就绪状态了,那么则表示该进程呢,只是暂不接受调度,那么对于对与挂起操作对应的。操作呢,是我们的激活操作,那么我们看看一下挂起操作引起挂起操作的原因。那么第一个呢,是终端用户的需需求,第二个呢,是负进程的需求,

第三个呢,是复合调节的需求,第四个呢,是操作系统的需要。那么,终端用户的需求呢?比如说,终端用户在自己程序运营期间发现了有一些问题需要改正,需要调整。需要更改,那么希望暂停自己的程序运行,那么使之停止下来,以便用户呢,研究其执行情况或对程序呢,进行修改,

在这种终端用户的要求的需要之下呢,需要对它进行更改调整的,这样一个需要之下呢。我们可以呢,将进程呢进行挂起,那么这是我们第一个终端用户的需求,第二个呢是父进程的请求,第二,有时呢,父进程希望自己的某个子进程停下来。那么,以便呢?考生修改该紫禁城或者协调各紫禁城之间的活动,那么这个时候呢?比如说我们附近城要求了调整协调,

我们紫禁城的活动,或者说看查看我们紫禁城的这样一个运行情况。这个时候呢,我们可以呢,对进程呢,进行挂起操作,那么这是第二个复进程的请求,那么复核调节的需要呢,就是当实施系统中某些工作负荷较重时,可能影响到对实施任务的这样一个。控制。那么可以呢,由系统把一些不重要的进程挂起,以保证了系统正常运行,比如说当我们有些实时系统呢,

这个时候运行的时候呢,它运行的进程过多,那么或者说进程的这样一个。运行运行的情况呢?它的这样一个使用的使用的系统的这样一个资源使用使用的系统,这样一个使用量呢,过过多的话,那么这个时候呢,造成了系统的负荷加重。这个时候呢,我们需要将它进行停止,将它进行暂停,那么将它进行挂起,或者说将一些将一些我们可以呢?加一些进程挂起,

比如说有些进程呢,有些进程过多,它使用量过大,比如说我们进程,比如使用量过大,那么比如说进程的使用量过大,那么或者说我们进程的过多。那么,进程实实行的进程过多,那么我们这个时候呢,我们系统的负荷较大,那么这个时候我们可以将一些不重要的进程啊挂起。把它挂起之后呢,我们进行暂停以及保证了系统能够正常运行,这是负荷调节的需要,

另外呢,还有操作系统的需要操作系统呢,有希望挂起某些进程。已检查了运行当中的资源使用情况。并行进行记账,那么就是说我们操作系统呢?有些时候呢,那么需要把某些进程挂起,然后进行对系统中的资源呢进行检查,进行查看,那么这个时候呢,我们需要把进程进行挂起。那么,这就是引起挂起操作的这样一个原因,比如说终端用户的需求附进程的请求,

复合调节的需要,以及和操作系统的需要。那么,在引入挂起源以后呢?我们看一下三个状态的转换,引起挂起源于和。这是bend和。激活原因active后呢?在它们的作用下呢?进程可能发生几种状态的转换,比如说由活动继续。到禁止就绪,那么当进程未处于未被挂起的就绪状态时呢?此时称为活动就绪状态。使之进程呢,

可以接受调度,当用挂起源于将其进程挂起后呢,该进程呢,变为禁止就绪状态。处于就绪,禁止就绪状态的进程呢,不再被调度执行,那么由活动组赛变为禁止组赛,当进程处于未被挂起的主赛状态时呢?伸扎式处于活动状态的。现在属于活动阻塞状态,表示当用挂起原,以将它挂起之后呢进程变转为静止阻塞状态。表该状态呢,在其所期待的事件出现后呢,

它将由禁止堵塞呢变为禁止就绪状态。禁止就绪到活动就绪,那么当处于。就是它的进程呢,若用活活动激活源已激活后呢,该进程呢,变成这样一个。就去看。禁止阻塞到活动阻塞当处于阻塞状态的进程,若用激活源与激活后呢?该进程呢?变为。阻塞状态,那么这是我们的用。使用挂起源以后,

三个状态的这样一个转换,那么这是在引用挂起源于和激活源以后呢?在它们的作用下呢?进程发生几种状态的转换的这样一个情况。接下来我们看一下。进程管理中的数据结构那么。一方面呢,为了便于对计算机中各类资源。包括硬件和信息的使用和管理操作系统呢,将它们抽象为各种数据结构以及提供一组对资源进行管理操作的命令,用户可以利用这些。数据结构以及操作命令呢,来执行相关的操作,而无需关心的去实现的具体细节,另一方面呢,

操作系统作为计算机资源的管理者。尤其是为了协调很多用户对计算机中资源共享的这样一个使用,它还必记必须记录和查询各种资源的使用和各类进程。这样一个运行情况。那么,操作系统对这些信息的组织和维护呢?是通过建立和维护各种数据结构的方式来实现的。那么,我们来看一下超进程管理中的数据结构。那么,操作系统中用于管理和控制的数据结构在计算机中对每个资源和每个进程呢,都设置了一个数据结构,用来表证其实体。我们称之为呢。资源信息表或者说进程信息表,

其中包含的资源或进程的标识,描述,状态等信息,以及一批指针。通过这些指针呢,可以将同类资源或进程的信息表或者同一进程所占用的信息资源。那么,资源信息分类成不同的队列,便于操作系统进行查找。操作系统呢,管理的这些数据结构呢,一般分为几类,比如说内存表。设备表,文件表以及了用于进程管理的进程表。

通常呢,进程表呢,又被称之为进程控制块pcd。那么接下来呢?我们来介绍一下进程控制块PCB的这样一个情况,进程控制块PCB的作用,为了便于系统描述。和管理进程的运行在操作系统中呢?为每个进程专门定义了核心数据结构,进程控制块PCB。PCB呢,作为进程实体的一部分,记录了操作系统所需的用于描述进程的当前情况以及管理进程运行的全部信息。是操作系统中最重要的记录型数据结构。pcp的结构呢?

它的作用呢?是使一个在多道程序环境下不能运行的,不能独立运行的程序。成为一个能独立运行的基本单位,一个能与其他进程并发执行的进程,那么我们来看一下它PCB它的作用。它是第一个作为独立基独立运行基本单位的标志,第二个呢,是能实现间断性运行方式,第三个呢,是提供进程管理所需要的信息,第四个是提供信息进程调度所需要的信息。第五个呢,是实践与其他进程的同性与同步。我们来看一下这些部分,

那么作为独立运行基本单位的标志呢?当一个程序配备了PCB以后。就表示它已是一个能在多道程序环境下独立运行的合法的基本单位,也就是取得操作系统服务的权利。比如说打开文件,系统中的文件请求或者系统中的IO设备,以及与其他相关进行进行通信等,因此当系统创建一个新进程时,就是为它创建一个PCB。当进程结束时呢,又收回去PCB进程呢,也随之为而取消系统呢,是通过PCB感知进程的存在,也就是说我们的PCB呢?已成为进程存在,

已存已成为进程存在于系统中的唯一标识,这里大家要注意PCB。是进程存在的唯一标识,那么这是第一个作为独立运行基本单位的标志,那么第二个能实现间断性运行方式,那么在多大程序环境下呢?程序是采用停停走走的间断。新的运行方式,运行的当进程因阻塞而暂停运行时,它必须保留自己运行的CPU现场信息再次被调度,运行时还需要恢复CPU的这样一个现场信息。在用了cpc b后,系统呢,就可将CPU的现场信息呢保存在被中断的PCB里面,也就是说我们系统进程在运行的时候呢,

当它被被。被暂停的时候呢,这个时候对它要保存它的现场信息,比如说它的它的寄存器信息,它的时时间信息,它的这样一个。地址使用的资源地址信息,它属于的这样一个存储空间的这样一个位置,这样一个地,这样一个。地址的这样这样这样一个信息,以及呢,它的这样一些指针的这样一些情况,以及它使用的资源的这些情况,那么这些呢,

我们就将它存放在PCB当中。有了PCB的系统呢,就得将CPU的线上信息呢保存在被中断进程的PCB中,供该进程呢再次被调度执行时恢复CPU现场使用,由此呢?在多道程序环境下,那么作为传统意义上的静态程序,并不具有保存或保护自己现场运行现场的手段的方式,无法保证其运行结果的可在线性。从而失去了运行的一运行的这样一个方式,这是第二个能实现间断性的运行方式,我们呢,通过保存现场信息来实现我们的。PCB了。这表存信息的方部分,

那那么可以呢?进行这样一个。恢复现场了吗?进行运行,实现间断性的运行方式,第三个提供进程管理所需要的信息。当调度程序呢?调度到某进程运行时,只能根据该程序PCB提供的。记录的程序和数据在内存中,外存的访实时里程找到相应的程序或数据,在进程运行过程中,当需要访问。文件系统中的文件或IO设备时,也需要借助PCB当中的信息,

另外呢,还根据PCB中的资源清单了解了该进程所需的全部资源。因此呢,在整个生命周期中,操作系统呢,总是根据PCB实施对进程的控制和管理,也就是说我们。我们这些系统呢,要调度资源,实现利用这些资源的方式,部分的时候呢,我们是通过PCB呢。它们中提供的这样一个实质指针,这指针来对内存或外来这。来来对内通过内存和外存中的实质指针,

那么找到相应的程序或数据,找到这些资源呢,进行运行,那么就是说在我们进程的整个生命期中。操作系统呢,总是根据PCB的来实施,对进程的管理和控制,那么这是我们提供进程管理所需要的信息。第四个提供进程调度有所需要的信息。那么,只有处于就绪状态的进程呢,才能被调度执行。而在PCB中就提供了进程处于何种状态的信息,如果处进程处于就绪状态,系统便将它插入进程就绪队列中,

等待就调度程序的调度。那么,另外,在调度过程中呢,往往还需要了解进程的其他信息,比如说调度的优先级,就需要进行进程的优先级。在有些比较公平的调度算法中呢,还需要知道进程的等待时间和已执行时间,比如说我们进程调度呢,我们还需要在pad中查看信息好吧。PCB呢,提供了进程处于何种状态的信息,以及呢PCB。这个时候呢,

它当中呢,它的这样一个优先级,它的这样一个执行时间,等待时间,这些部分呢,那么可以进进行一个。查要去进行一个。搜选择选择和运行的这样一个部分,那么这是提供进程调度所需要的信息,那么另外呢,还有一个其实现与其他进程之间的同步与通信,那么进程同步机制呢,是实现与租进程的协调运营。进行的在采用信号量机制的时候呢,它要求每个进程呢都设置有相应的用于同步的信号量,

在PCB中还用具有用于实现进程通信的区域和通信。队列指针。这样一些。部分啊,这是我们进程PCB块块的这样一个作用。我们来看一下。进程控制块中的信息,在进程控制块中呢,主要包含四个方面的信息,进程标志符处理及状态。进程调度信息,进程控制信息这四个部分,那么我们来具体看一下进程标志符呢?它唯一的标识了一个进程。一个进程呢,

通常有两种标志符,一个是外部标志符,一个是内部标志符,外部标志符呢?为了方便用户对进程进行访问,需要对每个进程呢设置一个外部标识符,它是创建者提供的,通常由字母和数字组成。为了描述进程的家族关系,还需要设设置父进程标志符以及子进程标志符,此外呢,还可以设置用户标志,表示该拥有该进程的用户。内部标志符呢,用于方便系统对进程的使用,

在近期操作系统中呢,又设置了内部标志符,比如说既赋予每一个进程一个唯一的数字标志符,它通常是一个。程序的进程的序号,那么也就是说我们的进程标志符呢?它有我们的外部标志符和内部标志符,内部标志符呢?是为了方便用户的访问,为进程设置一个外部标志符。内部标志符呢,是为了方便系统的访问,为它设置一个内部标志符。接下来我们看一下处理及状态,处理及状态信息呢,

也称之为处理及的上下文,主要是由处理及的各种寄存器的内容组成的,这些寄存器呢,包括通用寄存器,又称用户可视寄存器。它们是用户程序呢,可以访问到用于暂存信息。第二个呢,是指定寄存器,其中存放了要存要访问的下一条指令的地址,第三个呢,是程序状态自psw,其中含有状态信息。比如说条件码,执行方式中断,

屏蔽标志,第四个是用户在指针,是每一个用户呢,都有一个或若干个与之相关的系统,在用于存放过程和系统调用参数和调用地址。债指针呢?指向该站的债顶处理就处于执行状态的时候呢?正在处理的许多信息呢?都是放在寄存器中当进程呢?被切换时呢?处理器状态信息呢,必须保存在相应的PCB中,以便进程呢,重新执行时能再从断点呢,继续执行,

那么这是我们的处理器状态,那么你说我们的处理器状态当中呢,包含了我们。我们的。处理器的上下文的这样一个情况,那么它包含了我们的这样一个进程的。寄存器信息指令寄存器信息进程状态的这样一个信息,用户在指针这样一个信息,那么这是我们的进程的这样一个相关的信息,这样一个部分。另外呢,还有进程调度信息在操作系统进行调度的时候呢,必须了解进程的状态以及呢,有关进程调度的信息,这些进程信息包括了进程状态用于指明进程当前的状态。

它是作为操作系统进程调度兑换时的依据,第二个呢,以及进程优先级,它是用于描述进程状态以及使用处理器的优先级别的一个整数。优先级高的进程呢?应该先获得处理机第三个呢?是进程调度所需用的其他信息,他们与所采用的进程调度算法有关,比如说进程与等待CPU的时间的总和。进程与站执行的时间总和等事件呢,是指进程由执行态变为阻塞态所等待的事件,也就说阻塞原因,比如说进程的调度信息呢,那么包括了进程状态,包括了我们的。

优进程优先级包括了我们进程调度所需用的其他信息以及进程的事件,那么就是定程的调度,那么就是说进程进行调度的时候呢,要了解的进程的状态以及相关的处于进程调度的这样一个信息,比如说。进程状态,进程优先级进程的等待时间,进程所需要的其他信息,进程以以及我们这样一个事件部分,那么这是出进程的调度信息。那么,最后第四个呢是进程控制信息,进程控制信息呢是指用于进程控制所必须的信息,那么它包括了程序和数据的地址。进程实际中的程序和数据的内部和外层地址,

以便再调度时呢。到该进程执行时,能从PCB中找到。其程序和数据进程同步和通信机制,这是实现进程同步。和进程通讯时所必须的机制,如消息队列中。指针信号量等,他们可能全部或部分的分布在pcd中,还有资源清单,该清单中呢,列出了进程,在运行期间所需的全部资源。还有一张已分配的进程的资源的清单,第四个呢链接指针,

它给出了本进程pcp在队列中,下一个进程的pcp的首定是,那么就是说进程的控制信息呢,包括了程序和数据的地址。以及呢,进程同步和通信机制和资源清单,以及呢,链接指针这些部分,比如说程序和数据的地址呢,就是程序实体中的程序数据在内存和外存的地址。通信通信和同步和通信机制呢,就是实现同步和通信时所必须的机制,以及呢,资源清单,也就是说。

该进程在运行中。所需的全部资源清单。第四个呢,是链接指针,你说给出了进程呢,在对列中下一个p进程的PCB的手机时候,那么这是我们的进程控制块中的信息。那么,进程控制块的组织方式是什么呢?在一个系统中,通常可以有数十个,数百个乃至数千个PCB为了能对他们进行有效的管理,应该采用适当的方法将这些PCB组织起来。通常采用的组织方式有三种,线性链式和索引。

线性方式呢,就是将所有的PCB呢都组织在一张线性表中,将该表的手指呢放在内存中一个专用区域中,这样的方式呢,实现简单开销小。但每次查找时都需要扫描整张表,因此呢,适合进程数目不多的系统连接方式呢,是把所有的状态相同的PCB通过PCB中的链接字链接成一个队列。这样呢,就可以形成就绪队列,若干个阻塞队列和空白队列的,对就绪队列而言,往往按照进程的优先级呢,将PCB从高到低进行排列,

将优先级高的PCB呢,排在队伍的前面。另外呢?也可以把处于阻塞状态的PCB呢?根据一些阻塞状态原因的不同,处于排成多个阻塞序列。然后我们再看一下索引方式,索引方式是系统呢,是根据系统所有进程的。状态的不同来建立几张索引表,比如说就绪索引表所主赛索引表等,并把各索引表在内存中的首地址。记录在内存一张专用单元中,在每个索引表的表目中呢,记录有相应状态的某个PCB和在PCB中的地址,

那么这是我们的索引方式,所以说大家要注意进程控制块的组组织方式。一个呢,是我们的线性方式,一个呢,是索引连接方式,一个呢,是索引方式,接下来我们看一下进程控制。进程控制呢,是进程管理中最基本的功能,主要包括了创建新进程,终止已完成的进程,将因发生细长情况而无法继续运行的进程呢,处于阻塞状态。

负责将进程运行中的状态转换等功能,当一个正在进行的进程因某事件而暂停,不能持续进行,时而将其转为主赛状态。而在该进程所期待的事件发生后呢?又将该进程呢转换为就绪状态进程的控制啊,一般由操作系统内核中的源语来实现。操作系统一般将进程呢,分为若干层次,再将操作系统的不同功能呢,分分别设置在不同的层次中,通常将一些与硬件紧密相关的模块。各种与设备的驱动程序以及呢,运行频率较高的模块都安排在紧靠操作系统的这样一个软件层次中,让它们常在日常驻内存。

通常呢,被称为操作系统内核,这种安排方式的目的在于两方面,一种是对这种软件进行保护,防止其遭受其他程序的破坏。二是提高操作系统的运行效率。那么,相对应的是,为了防止操作系统本身及关键数据等遭到应用程序或有意或无意的破坏,通常呢,也将处理器的执行状态呢,分为系统态和用户态。系统态呢,又称为管态,也称为内核态,

它具有较高的特权,能执行一切指令访问所有寄存器和存储区。传统的操作系统呢,都在系统运行态。系统态运行,那么用户态呢?又称为木态,它是具有较低优先权的。这样一个执行状态。仅能执行规定的指令访问,指定的寄存器和存储器,一般情况下应用程序呢,只能在用户态运行。不能去执行操作系统指令及访问操作系统区域,这样呢,

可以访问,防止应用程序要对操作系统的破坏。那么,不同类型和规模的操作系统呢?它们的内核所包含的功能之间存在着一定的差异,但是呢,大多数操作系统的内核呢,都包括了支撑。功能以及呢,资源管理的两个功能,那么我们首先来看一下支撑功能,支撑功能呢,它有三个部分。一个呢,是中断处理,

一个呢,是时间惯例,一个呢,是操,一个是源于管理,那么操作系统的这样一个支撑功能中的中断处理呢?那么,这样一个支撑功能呢?是提供操作系统给其,与其他众多模块的一种基本功能,以支持这些模块工作。那么,这些三组最基本的支撑功能呢?就是我们的中断处理。时钟管理以及呢,

言语操作中断处理呢,是操作系统内核最基本的功能,是整个操作系统耐以活动的这样一个基础,操作系统许多种重要的活动呢,比如说许多类型的系统调用键盘命令的输入。进程调度,设备驱动的都要依赖于中断。通常呢,为了减少处理器中断的时间操作系统呢,提高程序执行的并发性。内核在中断至进行有限处理后,便卷入相应的进程,由这些进程呢,继续完成后续的这样一个处理工作。另外呢,

我们还有时钟管理,时钟管理是内核的一项基本功能,在操作系统中许多活动呢,就需要得到类时间管理的这样一个支撑,比如在时针片轮转调度中,每当时间片用完的时候呢,便用时钟管理产生一个中断信号。促使调度程序呢,重新进行调度,同样呢,在实时系统中的截止时间控制批处理系统中的这样一个最长运行时间控制呢,都要依靠我们的时间管理工时钟管理功能这样一个部分。最后一个呢,源于操作,源于操作,

所谓的源于是什么呢?源于就是由若干条指令构成的,用于完成一定功能的一个过程。那么,它们与一般过程的区别呢?在于源于呢?是原子操作。所谓的原子操作呢?就是一个操作过程中的动作呢?要么全都做,要么全不做。说那么也就是说它是一个不可分割的基本单位,也就是说原语在执行过程中呢,不允许被中断。原子操作在系统下态下执行常驻内存,

在内存中呢,可能会有不许多原语用于对链表的操作的,源于用于对进程同步的原因的。那么有时候我们来看一下中断处理,那么就是说它是内核最基本的功能,那么我们的。操作系统呢,它的许多功能呢,都要依靠于中断,那么时钟管理呢,它是内核的一项基本功能,我们操作系统许多活动呢,都要对,都要依靠我们终端。时政管理的这样一个产生了这样一个。

这样一个功能的这样一个作用的这样一个使用方式,那么原语操作呢?原语呢?就是。原语是原子操作,它的含义呢,就是在一个操一个操作中的动作呢,要么全做,要么全不做。那么,它是一个不可分割的基本单位,那么这是言语操作,那么资源管理功能呢?有进程管理,存储器管理以及呢设备管理。

那么,我们来看一下进程管理,在进程管理中,或者由于。各个功能模块的运行频率高,或者由于它们的多种功能的模块需要通常呢?都将它们放在内核中,以提高操作性能,操作系统的这样一个性能存储器管理了。存储器管理。存储器管理软件和运行频率呢,也比较高,比如说实现将用户的空间的逻辑地址呢,变为内存空间的物理地址等地址转换机构内存分配与回收功能模块,以及实现的内存保护和兑换功能的模块。

通常也将它们放在内核中,以保证存储器管理呢,有较高的运行速度,第三个呢是设备管理,由于设备管理与硬件。密切相关,因此呢,很大部分呢,都设置在内核中,比如说各类地址,各类设备。它的这样一个驱动程序,用于缓和CPU和IO速度不匹配的矛盾的缓冲管理,用于实现设备分配和设备独立性功能的这样一些模块好了。所以说我们看一下。

我们的资源管理呢,有进程管理进程管理呢,那么就是说我们各个功能模块那么在或者说各个功能模块的运行。频率呢较高,由于各个功能的运行频率较高,或者说它为为多被多种功能模块所需要,那么我们可以把它放在内核中,那么进行一个实现和。运行这样一个管理使用的部分,那么还有存储器管理,存储器管理呢?那么用于将用户空间的逻辑地址变为内存空间的物理地址的转换机构,比如说内存的回回收与分分分配。以及呢,兑换功能,

内存保护,那么这样一些方式,这样一些类型设备管理呢,那么比如说设备管理。用于了与这些。操作系统呢,使用的这些设备的。实时的应用。执行方式的这样一些实现了运用,运用部分,比如说设备的驱动缓和CPU与IO速度不平的缓冲,以及呢,设备分配,设备独立性,那么这样一些部分。

那么,这些呢?就是我们资源管理的部分。


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|5432考试网 ( 蜀ICP备2022024372号|川公网安备51152402000101号 )|网站地图

GMT+8, 2024-5-2 23:40 , Processed in 0.073600 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表