Huge Lemon的博客

位示图信息转换磁盘信息

2020-07-24

位示图与磁盘内部信息如何进行转换?

n个柱面,编号0~n-1;共m个磁头,编号0~m-1;每个磁道内的k个信息块从1开始编号,1~k。

x:逻辑磁盘块号
a:任意逻辑磁盘块的柱面号
b:磁头号
c:磁道内块号

则:

$ x = k × m × a + k × b + c $

$ a = (x - 1) / (k × m) $

$ b = ((x - 1) mod (k × m)) / k $

$ c = ((x - 1) mod (k × m)) mod k + 1 $

正常情况下,可以理解为:位示图的一个位置对应一个磁盘块,一个磁盘块就是一个扇区(最小单位),所以位示图一个块对应一个扇区。

注:汤子瀛的《操作系统第四版》里明确说明一个扇区称为一个盘块(或数据块)


磁盘块与扇区大小问题

既然磁盘块是一个虚拟概念。是操作系统自己"杜撰"的。软件的概念,不是真实的。所以大小由操作系统决定,操作系统可以配置一个块多大。

一个块大小=一个扇区大小*2的n次方。

N是可以修改的。

顿时我思考:为什么磁盘块大小必须是扇区大小的整数倍呢?

因为,磁盘驱动器,磁盘附带的硬件设备,与磁盘读写数据,操作系统也要靠它。
它读取磁盘数据就是扇区的大小。

一个扇区是512字节。有些硬盘厂商会提供4k大小扇区。这是物理结构。磁盘定下来的结构就是没法修改的

转自博客园《思考与总结:扇区和磁盘块的区别是什么》

使用支付宝打赏
使用微信打赏

若你觉得我的文章对你有帮助,欢迎点击上方按钮对我打赏