*** 作系统 | 期末复习一 处理器管理

 *** 作系统 | 期末复习一 处理器管理,第1张

*** 作系统 | 期末复习一 处理器管理

一.进程线程的关系

1、一个进程可以有多个线程,但至少有一个线程;而一个线程只能在一个进程的地址空间内活动。

2、资源分配给进程,同一个进程的所有线程共享该进程所有资源。

3、CPU分配给线程,即真正在处理器运行的是线程。

4、线程在执行过程中需要协作同步,不同进程的线程间要利用消息通信的办法实现同步。

从一定意义上讲,进程就是一个应用程序在处理机上的一次执行过程,它是一个动态的概念,而线程是进程中的一部分,进程包含多个线程在运行。

在引入线程的 *** 作系统中,通常都是把进程作为分配资源的基本单位,而把线程作为独立运行和独立调度的基本单位。由于线程比进程更小,基本上不拥有系统资源,故对它的调度所付出的开销就会小得多,能更高效的提高系统内多个程序间并发执行的程度。

1.进程是具有独立功能的程序在某个数据集合上的一次执行过程。

2.线程是进程内的一个执行实体(控制流)。

3.进程&线程联系和区别:

(1)调度:线程是处理器调度分配的基本单位。

(2)并发性:进程之间可并发执行,同一进程内的各线程之间也可并发执行。

(3)拥有资源:进程是拥有资源的独立单位,线程一般不拥有资源,但它可以共享进程的资源。

(4)系统开销:进程切换开销>>线程切换开销。

二.进程的状态转换  1.三态模型

(1)运行(running)态:进程占有处理器正在运行。

(2)就绪(ready)态:进程具备运行条件,等待系统分配处理器以便运行。

(3)等待(wait)态:又称为阻塞(blocked)态或睡眠(sleep)态,指进程不具备运行条件,正在等待某个事件的完成。

2.五态模型

新建态:进程刚被创建时的状态,尚未进入就绪队列。

终止态:进程完成任务到达正常结束点,或出现无法克服的错误而异常终止,或被 *** 作系统及有终止权的进程所终止时所处的状态。进入终止态的进程以后不再执行,但依然保留在 *** 作系统中等待善后。一旦其他进程完成了对终止态进程的信息抽取之后, *** 作系统将删除该进程。

3.缺弧原因

就绪态不能转换为阻塞态:

因为阻塞态是进程在运行时主动发生的:

  • 在程序执行阻塞I/O中的read、recv等系统调用时,进程将会一直处于阻塞直到数据到来或者到达设定的超时时间。
  • 进程可以执行sleep系统调用来显式进入阻塞。

处于就绪态的进程无法执行任何造成其阻塞的代码,故无法转换为阻塞态。

阻塞态不能转换为运行态:

阻塞态到达运行态需要满足两个条件:

  • 申请的资源被满足或等待的事件发生
  • 进程被调度

而在状态发生转换的一刻我们不能同时满足两个条件(即使你认为能,但在计算机中并不存在真正的“同时”,两个条件满足到来的电信号一定会有先后顺序),因此我们不能直接让阻塞态到运行态。

三.进程控制块的作用

进程控制块记录了 *** 作系统所需的,用于描述进程的当前情况,以及控制进程运行的全部信息。 *** 作系统是根据PCB来对并发执行的进程进行控制和管理的。 

1.标识信息:用于唯一的标识一个进程,分为用户使用的外部标识符和系统实用的内部标识号。

2.现场信息:保留进程在运行时存放在处理器现场中的各种信息。

3.控制信息:包括进程调度的相关信息,进程组成信息,进程间的族系信息等。

四.算法:会写出调换顺序 1.先来先服务调度算法(FCFS)

2.短作业优先调度算法(SJF)

3.最短剩余时间调度算法(SRTN)

4.高响应比优先调度算法(HRRN)

四种算法区别

 5.时间片轮转调度算法(RR)

6.优先级调度算法(非抢占式)

 7.优先级调度算法(抢占式)

8. 多级反馈队列调度算法

五.计算公式

 

课后习题答案: *** 作系统第五版费祥林-课后习题答案参考_蚂蚁文库

仅为个人复习自用。

学习内容来自王道视频讲解,课本为《 *** 作系统教程第五版》费翔林编著。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5684507.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存