操作系统——如何求磁盘的物理地址

如何求磁盘的物理地址

概念:

磁盘上的物理地址一般用:柱面号,盘面号,扇区号(或者块号)表示

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iXjof7MF-1631845137579)(../../../GitHub/MyBlogInGitee/content/textImgs/image-20210917101829985.png)]

1、柱面:硬盘通常由重叠的一组盘片构成,这个图是从上往下看的,只是其中一个盘片,每个盘面都被划分为数目相等的磁道,并从外缘的“0”开始编号,具有相同编号的磁道形成一个圆柱,称之为磁盘的柱面。

2、扇区:将盘片分为若干个扇形区域,每一个区域有自己的编号。

3、磁道:在盘片的一个圆环就是一个磁道,从内到外或者从外到内编号。

通过柱面,扇区,磁道这样划分,一个磁盘的盘片可以分为若干个物理块,然后这样的盘片(柱面)又不止一个,

这就是我们外存存放数据的方式。

如何将一个内存中的簇号来转化为磁盘上的物理地址:

将簇号转化为磁盘物理地址的过程由磁盘驱动程序完成。

假设内存的簇号为b,则:

柱面号: 簇号/每个柱面的簇数——结果向下取整

分析:给出的簇号可以当做物理块的总数,所求柱面号就是判断簇号第几个盘片上,则需除以每个盘片的总物理块数,结果是向上取整,因为多出来的小数代表需要多用一块盘片来装。

磁头号: (簇号%每个柱面的簇数)/每个磁道的簇数——结果向下取整

分析:一个磁道代表一个圆环,也就是一圈,然后一圈上的物理块的个数是根据分的扇区个数来决定的。给出的簇号同样当成物理块的总数,所求的磁头号可以认为簇号在一个柱面的哪一个磁道上,则需除以一个柱面的所有物理块取余(得到他剩下的物理块),然后再除以一个磁道的物理块数,来判断簇号在哪一个圆环上,结果依旧向下取整。

扇区号: 扇区地址(簇号)%每个磁道的扇区数

分析:所求扇区号可以认为簇号在一个柱面的一个磁道的哪一个扇形的区域上。由于我们之前得到了柱面号和磁头号。我们就确定了所求簇号在哪一个盘片的哪一个磁道上(也就是哪一个圆环上),现在需要求出扇区号来得到他最后的位置,则可以用簇号(所求物理块总数)对一个磁道上的所有物理块总数取余。

位置,则可以用簇号(所求物理块总数)对一个磁道上的所有物理块总数取余。

这样我们就确定了一个簇号在磁盘上的具体位置了。


如果你觉得这篇文章对您有帮助的话,麻烦帮我点个点个赞关注一下吧,创作不易,有你的支持才是我前进的动力~

  • 9
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 10
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

听弧丶

你的鼓励将是我最大的前进动力~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值