博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
操作系统学习(五)
阅读量:5051 次
发布时间:2019-06-12

本文共 1076 字,大约阅读时间需要 3 分钟。

  处理机调度与死锁

1:调度:一种资源的分配,处理机调度对资源进行分配,作业从提交到获得处理机执行。

2 调度层级

(1)   高级调度(作业调度)-》作业 根据调度算法从外存的后备队列调入就绪队列——》内存,然后创建进程,分配资源,放入就绪队列。

(2)   低级调度(进程调度)。

(3)   中级调度(内存调度)——》提高内存的利用率,将暂时不能运行的进程

调入外存等待。

3 调度算法的目标:(1)资源利用率 (2)公平性(不会发生进程饥饿现象)

(4)   平衡性(系统资源使用的平衡性)(4)策略强制执行

4:批处理系统目标

(1)   平均周转时间最短(周转时间=在外存的等待时间+进程就绪队列的等待时间+cpu的执行时间,I/O操作完成的时间)。

平均周转时间=周转时间/完成时间

 

 

(2)系统吞吐量:单位时间内完成作业的数量。

(3)处理机利用率高。

5:分时系统:响应时间快,均衡性。

6:实时系统的目标:截止时间的保证,可预测性。

 

 

调度算法

1:先来先服务(frist-come-frist-served FCFS)调度算法

按照作业到达的顺序来调度(优先考虑作业在系统中等待的时间)。

2:短作业优先(short job frist SJB)的调度算法

按照作业执行的时间作为优先级。

3:优先级调度算法(PSA)

高响应比调度算法:

Rp=(当前时间-等待时间)/运行时间+1;

 

4:进程调度任务:(1)保存处理机的现场信息  (2)按照某种算法选取进程

(2)   把处理机分配给进程。

:5:进程调度机制:(1)排队器:将系统中所有就绪进程根据算法排成一队

(3)   分派器(3)上下文切换器

 

6:进程调度方式

(1)   非抢占式;一旦处理机分配给某个进程,就让他一直运行(不会因为时钟中断,任何其他原因去抢占当前运行进程的处理机)

(2)   抢占式:允许调度程序根据某种算法(优先级),去暂停某个正在执行的进程,重新分配给另一个进程。

7:RR轮转调度算法:就是三个进程轮流占用一个时间片。

基本原理:首先根据FCFS策略排成一个就绪队列,设置每间隔一定时间产生一次中断,完成一次调度,然后激活系统中的进程调度,把CPU分配给队首。

 

时间片为 1 :q=1  表示每次只给这个进程占用1秒的时间,然后在根据队列选择进程。

0秒的时候A到达,A进入队首,先运行一秒,A运行1个时间片后,B到达,B插入队列,由于此时A没有运行完,则插入队列。

转载于:https://www.cnblogs.com/love-life-insist/p/9062955.html

你可能感兴趣的文章
关于cookie存取中文乱码问题
查看>>
k8s架构
查看>>
select 向上弹起
查看>>
mysql 多表管理修改
查看>>
group by order by
查看>>
bzoj 5252: [2018多省省队联测]林克卡特树
查看>>
https 学习笔记三
查看>>
Oracle学习之简单查询
查看>>
log4j配置
查看>>
linux 配置SAN存储-IPSAN
查看>>
双链表
查看>>
java学习笔记之String类
查看>>
pymysql操作mysql
查看>>
Linux服务器删除乱码文件/文件夹的方法
查看>>
牛腩记账本core版本源码
查看>>
Word Break II
查看>>
UVA 11082 Matrix Decompressing 矩阵解压(最大流,经典)
查看>>
jdk从1.8降到jdk1.7失败
查看>>
一些关于IO流的问题
查看>>
mongo备份操作
查看>>