[控制的基本过程及有效控制]计算机操作系统【慕课版】知识点+笔记(第2章进程的描述与控制)

 admin   2022-09-12 00:56   123 人阅读  0 条评论

2.1.1流程顺序继续执行

两个非常大的流程一般来说都由二个流程段共同组成,流程在继续执行时,要依照此种相继顺序逐一继续执行,仅现阶段一操作形式继续执行瘤果,就可以继续执行后继者操作形式。

流程的各展示柜是依次继续执行的,流程与流程间是以太网继续执行的,此种继续执行流程的形式称作流程的顺序继续执行。

2.1.2 顺序继续执行流程的特征:

?顺序性:流程在CPU上是顺序继续执行的。

?奥尔奈:多于流程这类就可以改变流程的运转自然环境。

?可重现性:流程继续执行的速率与最终的结论毫无关系。

2.1.2 流程mammalian继续执行的特征

间歇性

mammalian流程间互相阻碍。继续执行——中止继续执行——继续执行。

丧失奥尔奈

多个流程共享全机资源,继续执行状态受外界因素影响。

不可重现性

流程经过多次继续执行后,虽然其继续执行时的自然环境和初始条件都相同,但得到的结论却各不相同。

2.2.1 民主化的特征:

民主化是计算机系统流程运转时的抽象(静态部分:流程运转需要的代码和数据;动态部分:流程运转期间的状态(流程计数器、堆、栈……))

民主化具有独立的虚拟地址空间(每个民主化都具有独占全部内存的假象;内核中同样包含内核栈和内核代码、数据)

民主化掌控块(process control block, ) :专门的数据结构,与民主化一一对应。

2.2.2 民主化的特征

动态性(最基本上的特征):民主化由创建而产生, 由调度而继续执行,由 撤销而消亡

mammalian性:一段时间内同 时运转

独立性:民主化实体是两个能独立运转的基本上单位;是系统中独立获得资源 和独立调度的基本上单位

异步性:按各自独立的、 不可预知的速率 向前推进

2.2.3 民主化和流程的区别

民主化是流程的两个实例、一次继续执行、是活动的、在内存中的; 流程是静态的、在外存中的、是民主化的代码部分

2.2.4 民主化的状态及转换

就绪状态

? 两个非常大的流程一般来说都由二个流程段共同组成

? 流程在继续执行时,要依照此种相继顺序逐一继续执行,仅现阶段一操作形式继续执行瘤果,就可以继续执行后继者操作形式。

:已获得CPU,正在继续执行的状态

? 单处理机:两个民主化处于继续执行状态

? 多处理机:多个民主化处于继续执行状态

阻塞状态

? 正在继续执行的民主化由于发生某事件而暂时无法继续继续执行的状态

? 典型事件:请求l/O、申请缓冲空间

? 根据阻塞原因,设置多个阻塞队列

申请两个空白PCB;填写PCB;分配资源;设置就绪状态插入就绪队列

等待OS善后; 收回PCB

**挂起:**引入挂起操作形式的原因,是基于系统和用户的如下需要: (1) 终端用户的需要。 (2) 父民主化请求。 (3) 负荷调节的需要。 (4) 作业系统的需要

激活:(1) 活动就绪→静止就绪。 (2) 活动阻塞→静止阻塞。 (3) 静止就绪→活动就绪。 (4) 静止阻塞→活动阻塞。

PCB是民主化的一部分,是作业系统中最重要的

PCB的作用:

2.3.1 民主化掌控块PCB(2)

PCB的信息

① 民主化标识符 ② 处理机状态 ③ 民主化调度信息 ④ 民主化掌控信息

PCB的组织形式

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

2.1.10 PCB链接组织形式

2.4.1 民主化创建

2.4.2 民主化终止

2.4.3 民主化的阻塞与唤醒

①相同的功能却要在每个民主化中独自写一遍:

②不同的民主化侧重点不同,因此相同的功能在不同的民主化间可能效率不同,无法做到优势互补:

③即使A民主化获得了计算结论,B民主化由于和A完全独立,所以还是需要自己再算一遍:

①模块化: 数据库单独在两个民主化中,可以被复用

②加速计算: 不同民主化专注于特定的计算任务,性能更好

③信息共享: 直接共享已经计算好的数据,避免重复计算

,通信的内容一般叫做消息

低级民主化通信 :民主化的同步和互斥(效率低 一次只能存两个/放两个、通信对用户不透明)

高级民主化通信:(使用方便 OS隐藏了实现民主化通信的具体细节 、高效地传送大量数据 用户可直接利用高级通信命令(原语)高效地传送大量的数据。)

举例:JAVA语言的Synchronized多线程锁

(基于共享数据结构的通信形式(效率低)、基于共享存储区的通信形式(高级))

用于连接两个读民主化和两个写民主化以实现它们间通信的 两个共享文件,又名pipe文件),拥有的能力

管道的特征:单向通信,当缓冲区满时阻塞;两个管道有且只能有两个端口: 两个输入,两个输出;数据不带类型,即字节流

(管道是Unix等宏内核系统中非常重要的民主化间通信机制、是两个民主化间的一根通信通道) 示例:常见命令 ls | grep

(直接通信形式、间接通信形式(通过邮箱))

客户机-服务器系统(计算机系统间的民主化通信)(套接字(Socket)、远程操作过程调用(RPC)和远程方法调用(RMI,Java))

发送原语:send(receiver, message) 、接收原语:receive(sender, message)

民主化的同步形式 在民主化间进行通信时,同样 需要有民主化同步机制,以使诸民主化 间能协调通信。最常用的是:发送民主化不阻塞,接 收民主化阻塞。

:通过信箱来完成

发送原语:send(mailbox, message) 、接收原语:receive(mailbox, message)

分类:私用邮箱,公共邮箱,共享邮箱

1.线程的不足:创建民主化的开销非常大、隔离性过强、内部无法支持并行

的基本上单位(传统民主化称作重型民主化)

的基本上单位(又称作轻型民主化)

静态部分由民主化提供、包括了继续执行所需的最小状态)

(每个线程共享同一地址空间、允许民主化内并行)

4.民主化 VS 线程

基本上单位:在引入线程的OS中,

切换:同一民主化线程的切换不会引起民主化切换;但两个民主化中的线程切换到另两个民主化中的线程将会引起民主化切换

mammalian性:在引入线程的作业系统中,不仅民主化间可以mammalian继续执行,而且在两个民主化中的 多个线程间,也可mammalian继续执行。

拥有资源:民主化:是系统中拥有资源的两个基本上单位,它可以拥有资源,许多个线程共享其隶属民主化所拥有的资源。

线程:这类不拥有系统资源,仅有一点保证独立运转的资源;

独立性:同一民主化中的不同线程间的独立性要比不同民主化间的独立性低得多。

系统开销:线程切换的代价远低于民主化切换的代价;同一民主化中的多个线程间的同步和通信也比民主化的简单

支持性:线程支持多处理机系统

继续执行态、就绪态、阻塞态。转换操作过程和民主化的一样

内核支持线程KST、用户级线程ULT

:内核支持线程的实现(利用系统调用)、用户级线程的实现(借助中间系统)

内核空间实现:内核这类可采用多线程技术,提高继续执行速率和效率、线程的切换比较快,开销小。但是对用户线程切换,开销非常大

用户空间实现:调度算法可以是民主化专用的、线程的实现与OS平台毫无关系、不需要切换到内核空间。但是不能利用多处理机进行多重处理的优点

本文地址:http://51ac.top/post/17109.html
版权声明:本文为原创文章,版权归 admin 所有,欢迎分享本文,转载请保留出处!

 发表评论


表情

还没有留言,还不快点抢沙发?