硬盘基础知识:磁头 柱面 扇区理解
 2018.11.12    |      嵌入式学习    |     AilsonJack    |     暂无评论    |     2187 views
By: Ailson Jack
Date: 2018-11-11
个人博客: http://www.only2fire.com/
<p class="artical_littlestyle1">1、基础知识</p><p style="text-indent: 2em;">整个硬盘上一般有很多的盘片组成,沿着盘片半径的方向被划分成了很多同心圆,这就是磁道,每条磁道由很多的扇形区域组成,叫做扇区(扇区是从磁盘读出和写入信息的最小单位,通常大小为512字节),不同盘片上的同半径磁道组成了柱面,这些都是磁盘物理上的概念,知道便可。有了这些概念,便可以计算磁盘的容量:<br/></p><p style="text-indent: 2em;">磁盘容量 = 磁头数x磁道(柱面)数x每道扇区数x每扇区字节数<br/>磁头(head)数:每个盘片一般有上下两面,分别对应1个磁头,共2个磁头,因此,用哪个磁头就可以表示数据在哪个磁面;<br/>磁道(track)数:磁道从盘片外圈往内圈编号0磁道,1磁道…,靠近主轴的同心圆用于停靠磁头,不存储数据;<br/>柱面(cylinder)数:等于磁道数量,所有磁片中半径相同的同心磁道构成“柱面&quot;,意思是这一系列的磁道垂直叠在一起,就形成一个柱面的形状。简单地理解,柱面就是磁道;<br/>扇区(sector)数:每个磁道都被切分成很多扇形区域,每个磁道的扇区数量相同;<br/>圆盘(platter)数:就是盘片的数量。<br/></p><p style="text-indent: 2em;">磁盘的结构图如下所示:</p><p style="text-align:center"><img src="/uploads/AilsonJack/2018.11.12/1541998688341835.png" onclick="preview_image(&#39;/uploads/AilsonJack/2018.11.12/1541998688341835.png&#39;)"/></p><p class="artical_littlestyle2">2、相对扇区号的计算</p><p style="text-indent: 2em;">3.5寸1.44M 软盘,有两个磁头,正反两面各一个;80个磁道(即80个圆圈);每个磁道有18个扇区;每个扇区为512字节。<br/></p><p style="text-indent: 2em;">软盘容量 = 512字节/扇区 * 2面 * 80磁道(柱面)/面 * 18扇区/磁道 = 1440 KB<br/>磁头,即面:编号[0, 1]<br/>80个磁道,即柱面(圆圈):编号[0, 79]<br/>18个扇区:编号[1, 18]<br/>相对扇区号[0, 2879]:相对扇区号按照柱面排序,即从最外头的圆圈到最里头的圆圈。<br/>0柱面正面(即磁头号为0)的1-18扇区为0-17号相对扇区,0柱面反面(即磁头号为2)的1-18扇区为18-35号相对扇区,然后是1柱面,2柱面,直到79柱面。<br/><span style="background-color: rgb(118, 146, 60);">(1)、</span>知道柱面号,磁头号,扇区号计算相对扇区号<br/>由上面可知0号柱面包含了相对扇区号[0,35],1号柱面包含相对扇区号[36,71],依次类推。<br/>设相对扇区号为N,则<br/>柱面号CH = N / 36;<br/>令x = N % 36;<br/>则x范围为[0,35],其中[0,17] 为磁头号0, [18,35]为磁头号1.<br/>则磁头号DH = x / 18;<br/>令y = x % 18; y范围[0, 17]<br/>则扇区号CL = y + 1。<br/>相对扇区号:N = 36*CH + 18*DH + CL。<br/><span style="background-color: rgb(118, 146, 60);">(2)、</span>知道相对扇区号,计算柱面号、磁头号、扇区号<br/>N = 36*CH + 18*DH + CL;<br/>由此式子,也可计算:<br/>CH = N / 36<br/>DH = (N % 36) / 18<br/>CL = (N % 36) % 18 + 1<br/></p><p class="artical_littlestyle3">3、硬盘上的引导信息</p><p style="text-indent: 2em;">硬盘的第一个扇区被称之为Boot Sector。由MBR (MasterBoot Record)、DPT (Disk Partition Table) 和 Boot Record ID 三部分组成。<br/></p><p style="text-indent: 2em;">MBR又称作主引导记录,占用 Boot Sector 的前 446 个字节(0 ~ 0x1BD)。存放系统主引导程序,负责从活动分区中装载并运行系统引导程序。<br/></p><p style="text-indent: 2em;">DPT 即主分区表,占用 64 个字节 (0x1BE ~ 0x1FD),记录了磁盘的基本分区信息。主分区表分为四个分区项,每项 16 字节,分别记录了每个主分区的信息 (因此最多可以有 4 个主分区)。<br/></p><p style="text-indent: 2em;">Boot Record ID 即引导区标记,占用两个字节 (0x1FE ~ 0x1FF)。对于合法引导区,它等于 0xAA55,这是判别引导区是否合法的标志。<br/></p>
欢迎关注博主的公众号呀,精彩内容随时掌握:
热情邀请仔细浏览下博客中的广告,万一有对自己有用或感兴趣的呢。◕ᴗ◕。。
如果这篇文章对你有帮助,记得点赞和关注博主就行了^_^,当然了能够赞赏博主,那就非常感谢啦!
注: 转载请注明出处,谢谢!^_^
暂无评论,要不要来个沙发
发表评论

 
Copyright © 2015~2023  说好一起走   保留所有权利   |  百度统计  蜀ICP备15004292号