北方工业大学操作系统操作系统期末复习(课堂PPT)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
12
2.最短寻道时间优先算法
• 为了节约时间,这次我们不再按照顺序来扫描磁盘了
• 18、39、55、58、90、100、150、160
• 还是那些磁道,不过这次我们提前排好序,起始位置依然100
• 接着我们看,在需要跑的磁道中,离100最近的磁道是哪个
• 这也是我们之所以要排序的原因,在这种情况下只有100相邻的两个 磁道可能是我们的选择
解法
P操作,也可以是wait操作是--,只有参数大于0才可以顺利执行 V操作,也可以是signal操作是++,相当于是恢复
25
例题
2. 假定一个阅览室可供50个人同时阅读。读者进入和离开阅览室时都必须在阅览室入口 处的一个登记表上登记,阅览室有50个座位,规定每次只允许一个人登记或注销登记。 要求: (1)用PV操作描述读者进程的实现算法(可用流程图表示,登记、注销可用自然语言描 述); (2)指出算法中所用信号量的名称、作用及初值。 解
• 注意:磁头移动的是距离 • 而不是位移,所以不可能 • 为负数,因此一定是大减小
• 磁头移动到39,m+=(58-39),m=67
11
以此类推,直到全部扫描完
• 当然,如果是答题,我们直接列式子即可 • m=(100-55)+(58-55)+(58-39)+…..=结果 • 平均寻道长度=m/n n为磁道号个数
14
分页存储求物理地址
•指令:Load 1,2500 •指令的逻辑地址是100,页长1k,求指令的物理地址 •1.求页号
逻辑地址/页长,商为页号,余数为偏移量
页号 物理 块号
0
4
1
8
2
7
2.查表
3.物理地址=物理块号*页长+偏移量
取了两次地址,第一次根据逻辑地址找到物理地址,第二次取物理地址 15
我•猜你以可此能类会推问,:这知真Βιβλιοθήκη Baidu的将是最所短有的磁寻道道跑时完间当吗然?,跑过的磁道我们不会跑第二遍
当然,答案肯定是不一定,计算机只能看到下一步的情况,
但它不可能像围棋高手一样总览全局,至于真正的最短,
那就是我们程序员写的算法才能够实现了,在操作系统中不会这么复杂
13
3.扫描算法(电梯算法)
• 没错,就像是电梯一样,直上直下,一条道走到黑,撞了南墙再回头 • 18、39、55、58、90、100、150、160 • 同样的,我们把磁道号排好序,初始位置100 • 然后,我们按照序号增加的方向依次寻道 • 18、39、55、58、90、100、150、160 • 18、39、55、58、90、100、150、160 • 咚!撞墙了,这时可以回头了,但注意寻过道的磁道不需要再走一遍 • 18、39、55、58、90、100、150、160 • 所以我们直接跳到90 • 18、39、55、58、90、100、150、160 • 18、39、55、58、90、100、150、160
页面置换算法
• 如果给的是逻辑地址需要求出页号 • 页号=逻辑地址/页长(要的是商)
16
先进先出(FIFO)
将页号依次排好
17
方法
一开始是依次装入物理块,全都有缺页中断
18
方法
如果物理块满了,判断哪个页面存在时间最长就替换 方法是向左划线判断哪条最长,同时缺页中断
19
方法
如果下一个页面物理块已经有了,就不用写了,也没有缺页中断
• 我们发现,相比150,磁道90离100更近,所以我们先去90
• 18、39、55、58、90、100、150、160
• m+=(100-90) m=10
• 同样,相比于100,58距离90更近,我们选择58
• 18、39、55、58、90、100、150、160
• m+=(90-58) m=42
P1拥有2个r1资源并请求1个r2
P1
P1 进程
进程请求资源
P1
进程拥有资源
r1
r2
P2
P2拥有1个r1资源和1个r2资源并请求1个r1
4
R1剩余0个资源
判断死锁
P1需要1个r2
P1
P2
P2需要1个r1
R2剩余1个资源
5
P2的需求无法满足,但P1可以得到满足 P1
R1剩余2个资源
R2剩余1个资源
想象,从磁盘圆心处向外画一条直线作为我们下图的X轴, 把磁盘的磁道序号标在上面。
9
题目是这样出的
• 条件: • 欲访问的磁道号:100、55、58、39、18、90、160、150 • 磁头当前位置:100 • 问题: • 磁头移动磁道数和平均寻道长度
10
1.先来先服务算法
• 100、55、58、39、18、90、160、150
S1:阅览室可供使用的空座位,其初值为50 S: 是否可通过阅览室,其初值为1 Process READ_in(i=1„50) {到达阅览室入口处;
• 我们从起始位置开始,按顺序扫描,设磁头移动磁道数为m,初始为0 • 100、55、58、39、18、90、160、150
• 磁头移动到55,m+=(100-55),m=45 • 100、55、58、39、18、90、160、150 • 磁头移动到58,m+=(58-55),m=48 • 100、55、58、39、18、90、160、150
操作系统期末复习
Made by Tzh
1
第一部分:大题
• 本部分为课上老师所讲的几道大题,作为 大题而言命中率应该蛮高的吧,它们包括:
• 资源分配图 • 硬盘调度 • 页面置换算法 • PB操作 • 物理地址替换
2
1.资源分配图
• 会看、会画 • 会判断死锁
P1
r1
r2
P2
3
会看、会画
3个资源 2个资源
P2
P2需要1个r1
P1顺利执行,释放占用所有资源
6
P2需求得到满足,顺利执行 P1
R1剩余3个资源
R2剩余2个资源
P2
在这种情况下不会死锁
7
那么,什么情况下会产生死锁呢
P1需要2个r2
P1
R1剩余0个资源
R2剩余1个资源
P2
P2需要1个r1
此时,P1、P2的需求都无法得到满足,死锁 8
2.磁盘调度
20
最近最久未使用(LRU)
21
方法
往前数第三个来替换(有几个物理块找几个),但不算重复的,有重复的还要往前找
22
要计算的东西
• 缺页次数:每一次页面替换和页面装入(画的对勾数) • 被置换的页号顺序:被替换走的页号按顺序排列 • 缺页率=缺页次数/页面总数
23
生产者—消费者问题
他们又是互斥关系,又是相互协作关系,也是同步关系 24
2.最短寻道时间优先算法
• 为了节约时间,这次我们不再按照顺序来扫描磁盘了
• 18、39、55、58、90、100、150、160
• 还是那些磁道,不过这次我们提前排好序,起始位置依然100
• 接着我们看,在需要跑的磁道中,离100最近的磁道是哪个
• 这也是我们之所以要排序的原因,在这种情况下只有100相邻的两个 磁道可能是我们的选择
解法
P操作,也可以是wait操作是--,只有参数大于0才可以顺利执行 V操作,也可以是signal操作是++,相当于是恢复
25
例题
2. 假定一个阅览室可供50个人同时阅读。读者进入和离开阅览室时都必须在阅览室入口 处的一个登记表上登记,阅览室有50个座位,规定每次只允许一个人登记或注销登记。 要求: (1)用PV操作描述读者进程的实现算法(可用流程图表示,登记、注销可用自然语言描 述); (2)指出算法中所用信号量的名称、作用及初值。 解
• 注意:磁头移动的是距离 • 而不是位移,所以不可能 • 为负数,因此一定是大减小
• 磁头移动到39,m+=(58-39),m=67
11
以此类推,直到全部扫描完
• 当然,如果是答题,我们直接列式子即可 • m=(100-55)+(58-55)+(58-39)+…..=结果 • 平均寻道长度=m/n n为磁道号个数
14
分页存储求物理地址
•指令:Load 1,2500 •指令的逻辑地址是100,页长1k,求指令的物理地址 •1.求页号
逻辑地址/页长,商为页号,余数为偏移量
页号 物理 块号
0
4
1
8
2
7
2.查表
3.物理地址=物理块号*页长+偏移量
取了两次地址,第一次根据逻辑地址找到物理地址,第二次取物理地址 15
我•猜你以可此能类会推问,:这知真Βιβλιοθήκη Baidu的将是最所短有的磁寻道道跑时完间当吗然?,跑过的磁道我们不会跑第二遍
当然,答案肯定是不一定,计算机只能看到下一步的情况,
但它不可能像围棋高手一样总览全局,至于真正的最短,
那就是我们程序员写的算法才能够实现了,在操作系统中不会这么复杂
13
3.扫描算法(电梯算法)
• 没错,就像是电梯一样,直上直下,一条道走到黑,撞了南墙再回头 • 18、39、55、58、90、100、150、160 • 同样的,我们把磁道号排好序,初始位置100 • 然后,我们按照序号增加的方向依次寻道 • 18、39、55、58、90、100、150、160 • 18、39、55、58、90、100、150、160 • 咚!撞墙了,这时可以回头了,但注意寻过道的磁道不需要再走一遍 • 18、39、55、58、90、100、150、160 • 所以我们直接跳到90 • 18、39、55、58、90、100、150、160 • 18、39、55、58、90、100、150、160
页面置换算法
• 如果给的是逻辑地址需要求出页号 • 页号=逻辑地址/页长(要的是商)
16
先进先出(FIFO)
将页号依次排好
17
方法
一开始是依次装入物理块,全都有缺页中断
18
方法
如果物理块满了,判断哪个页面存在时间最长就替换 方法是向左划线判断哪条最长,同时缺页中断
19
方法
如果下一个页面物理块已经有了,就不用写了,也没有缺页中断
• 我们发现,相比150,磁道90离100更近,所以我们先去90
• 18、39、55、58、90、100、150、160
• m+=(100-90) m=10
• 同样,相比于100,58距离90更近,我们选择58
• 18、39、55、58、90、100、150、160
• m+=(90-58) m=42
P1拥有2个r1资源并请求1个r2
P1
P1 进程
进程请求资源
P1
进程拥有资源
r1
r2
P2
P2拥有1个r1资源和1个r2资源并请求1个r1
4
R1剩余0个资源
判断死锁
P1需要1个r2
P1
P2
P2需要1个r1
R2剩余1个资源
5
P2的需求无法满足,但P1可以得到满足 P1
R1剩余2个资源
R2剩余1个资源
想象,从磁盘圆心处向外画一条直线作为我们下图的X轴, 把磁盘的磁道序号标在上面。
9
题目是这样出的
• 条件: • 欲访问的磁道号:100、55、58、39、18、90、160、150 • 磁头当前位置:100 • 问题: • 磁头移动磁道数和平均寻道长度
10
1.先来先服务算法
• 100、55、58、39、18、90、160、150
S1:阅览室可供使用的空座位,其初值为50 S: 是否可通过阅览室,其初值为1 Process READ_in(i=1„50) {到达阅览室入口处;
• 我们从起始位置开始,按顺序扫描,设磁头移动磁道数为m,初始为0 • 100、55、58、39、18、90、160、150
• 磁头移动到55,m+=(100-55),m=45 • 100、55、58、39、18、90、160、150 • 磁头移动到58,m+=(58-55),m=48 • 100、55、58、39、18、90、160、150
操作系统期末复习
Made by Tzh
1
第一部分:大题
• 本部分为课上老师所讲的几道大题,作为 大题而言命中率应该蛮高的吧,它们包括:
• 资源分配图 • 硬盘调度 • 页面置换算法 • PB操作 • 物理地址替换
2
1.资源分配图
• 会看、会画 • 会判断死锁
P1
r1
r2
P2
3
会看、会画
3个资源 2个资源
P2
P2需要1个r1
P1顺利执行,释放占用所有资源
6
P2需求得到满足,顺利执行 P1
R1剩余3个资源
R2剩余2个资源
P2
在这种情况下不会死锁
7
那么,什么情况下会产生死锁呢
P1需要2个r2
P1
R1剩余0个资源
R2剩余1个资源
P2
P2需要1个r1
此时,P1、P2的需求都无法得到满足,死锁 8
2.磁盘调度
20
最近最久未使用(LRU)
21
方法
往前数第三个来替换(有几个物理块找几个),但不算重复的,有重复的还要往前找
22
要计算的东西
• 缺页次数:每一次页面替换和页面装入(画的对勾数) • 被置换的页号顺序:被替换走的页号按顺序排列 • 缺页率=缺页次数/页面总数
23
生产者—消费者问题
他们又是互斥关系,又是相互协作关系,也是同步关系 24