<操作系统导论>第三十八章

前言

写作业写到这一章没什么热情了,这一篇基本都是参考“鱼树”大佬的,想有原汁原味的体验建议去看他的博客。
先赞后看,养成习惯(✿◡‿◡)
博客不加水印,方便你我他

开始

1.使用模拟器执行一些基本的 RAID 映射测试。运行不同的级别(0、1、4、5),看看
你是否可以找出一组请求的映射。对于 RAID-5,看看你是否可以找出左对称(left-symmetric)和左不对称(left-asymmetric)布局之间的区别。使用一些不同的随机种子,产生不同于上面的问题。

模拟20个块的左对称: ./raid.py -R 20 -n 5 -L 5 -s 1 -5 LS -c
在这里插入图片描述

模拟20个块的左不对称: ./raid.py -R 20 -n 5 -L 5 -s 1 -5 LA -c
在这里插入图片描述
测试多组数据可知他们的布局是有区别的:左对称算法下每行数据块每次从校验位开始依次顺序放入不同磁盘,左不对称算法下每行数据块每次从Disk0开始依次顺序放入不同磁盘。

2.与第一个问题一样,但这次使用-C 来改变大块的大小。大块的大小如何改变映射?

./raid.py -s 1 -C 8192 -n 5 -L 0 -R 20 -c
模拟20个块,块大小为8192(4096×2)
在这里插入图片描述
./raid.py -s 1 -C 16384 -n 5 -L 0 -R 32 -c
模拟32个块,块大小为16384(4096×4)
在这里插入图片描述
可以看出,改变大块大小,将改变在每个磁盘上放置的块的数量,当大块大小为N倍的块大小时,将会在一个磁盘连续放置N个数据块之后移动至下一个磁盘。

3.执行上述测试,但使用-r 标志来反转每个问题的性质。

未反转: ./raid.py -s 1 -n 5 -L 0 -R 20
在这里插入图片描述

已反转: ./raid.py -s 1 -n 5 -L 0 -R 20 -r
在这里插入图片描述
以RAID0策略为例:(不是很懂,参考大神的:) )
在未反转情况下,给定逻辑地址,我们可以得到对应的磁盘和偏移:
i = A/N
在反转情况下,给定磁盘和偏移,同样可以得到对应的逻辑地址:
A = i + N x j

4.现在使用反转标志,但用-S 标志增加每个请求的大小。尝试指定 8KB、12KB 和 16KB的大小,同时改变 RAID 级别。当请求的大小增加时,底层 I/O 模式会发生什么?请务必在顺序工作负载上尝试此操作(-W sequential)。对于什么请求大小,RAID-4 和 RAID-5 的 I /O 效率更高?

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
当请求大小增加时,底层I/O模式也会增加对于8kb,12kb,16kb的请求大小,RAID-4和RAID-5的I/O效率更高

5.使用模拟器的定时模式(-t)来估计 100 次随机读取到 RAID 的性能,同时改变 RAID级别,使用 4 个磁盘。

./raid.py -n 100 -L 0 -R 1000 -W rand -t -c
在这里插入图片描述

./raid.py -n 100 -L 1 -R 1000 -W rand -t -c
在这里插入图片描述

./raid.py -n 100 -L 4 -R 1000 -W rand -t -c
在这里插入图片描述

./raid.py -n 100 -L 5 -R 1000 -W rand -t -c
在这里插入图片描述

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值