操作系统笔记 处理机调度和存储器管理

本文详细介绍了操作系统中的处理机调度,包括处理机调度的层次、目标,以及各种调度算法,如FCFS、SJF、优先级调度等。同时,文章深入探讨了进程调度的任务和方式,以及实时调度算法。此外,文章还阐述了存储器管理,如连续分配存储管理的几种方式、分页和分段存储管理,并讨论了地址映射和信息保护。
摘要由CSDN通过智能技术生成

3. 处理机调度

3.1 处理机调度的层次和目标

层次

  1. 高级调度(High Level Scheduling):调度对象是作业。根据某种算法,决定将外存处于后备队列中的哪几个作业调入内存。只用于多道批处理系统中
  2. 中级调度(Intermediate Scheduling):将那些暂时不能允许的进程,调至外存等待;当它们具备运行条件且内存又稍有空闲时,由中级调度来讲外存上的那些具备允许条件的就绪进程重新调入内存。
  3. 低级调度(Low Level Scheduling):调度对象是进程(或内核级线程)。根据某种算法,决定就绪队列中的哪个进程获得处理机,并由分派程序将处理及分配给选中的进程。

目标

  1. 资源利用率( Utilization )
  2. 公平性(Fairness)
  3. 资源的平衡利用(Balance)
  4. 策略的强制执行

3.2 作业调度

一些基本概念

周转时间 = 作业完成时刻 - 作业到达时刻

带权周转时间 = 周转时间 / 服务时间;

平均周转时间 = 作业周转总时间 / 作业个数;

平均带权周转时间 = 带权周转总时间 / 作业个数;

先来先服务(First-come First-Served,FCFS)调度算法

该算法既可用于作业调度,也可以用于进程调度。系统按照作业到达的先后次序来进行调度

短作业优先(Shortest Job First,SJF)调度算法

该算法既可以用于作业调度,又可以用于进程调度。 在作业调度中,该算法每次从后备作业队列中挑选估计服务时间最短的一个或几个作业,将他们调入内存,分配必要的资源,创建进程并放入就绪队列。

最短剩余时间优先(Shortest Remaining Time,SRT)调度算法

抢占式算法,最短剩余时间优先,总是选择剩余时间最短的进程。

优先级调度算法(Priority-Scheduling Algorithm,PSA)

由外部赋予作业相应的优先级,系统从后备队列中选择若干个优先级最高的作业装入内存。

高响应比优先级调度算法(Highest Response Ratio Next,HRRN)

高响应比优先调度算法既考虑作业的执行时间也考虑作业的等待时间,综合了先来先服务和最短作业优先两种算法的特点。

该算法中的响应比是指作业等待时间与运行比值,响应比公式定义如下:

响应比 =(等待时间+要求服务时间)/ 要求服务时间,即 RR =(w+s)/ s= 1 + w / s,因此响应比一定是大于 1 的。

系统把处理机分配给就绪队列中响应比最高的进程。

例子

分别算出用 FCFS、SJF、HRRN 调度的周转时间、带权周转时间、平均周转时间、平均带权周转时间。

作业名 到达时间 处理时间
A 0 3
B 2 6
C 4 4
D 6 5
E 8 2

FCFS

作业名 开始时间 结束时间 周转时间 带权周转时间
A 0 3 3 1
B 3 9 7 1.5
C 9 13 9 2.25
D 13 18 12 2.4
E 18 20 12 6

总周转时间:43

总带权周转时间:13.15

SJF

作业名 开始时间 结束时间 周转时间 带权周转时间
A 0 3 3 1
B 3 9 7 1.5
C 11 15 11 2.75
D 15 20 14 2.8
E 9 11 3 1.5

总周转时间:38

总带权周转时间:9.95

HRRN

作业名 开始时间 结束时间 周转时间 带权周转时间
A 0 3 3 1
B 3 9 7 1.5
C 9 13 9 2.25
D 15 20 14 2.8
E 13 15 7 3.5

总周转时间:40

总带权周转时间:11.05

所以

算法 平均周转时间 平均带权周转时间
FCFS 8.6 2.63
SJF 7.6 1.99
HRRN 8 2.21

3.3 进程调度

任务

  1. 保存处理机的现场信息
  2. 按某种算法选取进程
  3. 把处理机分配给进程

方式

  1. 非抢占式(Nonp
  • 0
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值