硬盘存储数据是根据电-Read.PDF

  1. 1、本文档共32页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
硬盘存储数据是根据电-Read

一、硬盘的物理结构: 硬盘存储数据是根据电、磁转换原理实现的。硬盘由一个或几个表面镀有磁性物质的金 属或玻璃等物质盘片以及盘片两面所安装的磁头和相应的控制电路组成( 图1),其中盘片和 磁头密封在无尘的金属壳中。 硬盘工作时,盘片以设计转速高速旋转,设置在盘片表面的磁头则在电路控制下径向移 动到指定位置然后将数据存储或读取出来。当系统向硬盘写入数据时,磁头中“写数据” 电流 产生磁场使盘片表面磁性物质状态发生改变,并在写电流磁场消失后仍能保持,这样数据就 存储下来了;当系统从硬盘中读数据时,磁头经过盘片指定区域,盘片表面磁场使磁头产生 感应电流或线圈阻抗产生变化,经相关电路处理后还原成数据。因此只要能将盘片表面处理 得更平滑、磁头设计得更精密以及尽量提高盘片旋转速度,就能造出容量更大、读写数据速 度更快的硬盘。这是因为盘片表面处理越平、转速越快就能越使磁头离盘片表面越近,提高 读、写灵敏度和速度;磁头设计越小越精密就能使磁头在盘片上占用空间越小,使磁头在一 张盘片上建立更多的磁道以存储更多的数据。 二、硬盘的逻辑结构: 硬盘由很多盘片(platter)组成,每个盘片的每个面都有一个读写磁头。如果有N 个盘片。 就有2N 个面,对应2N 个磁头(Heads),从0、1、2 开始编号。每个盘片被划分成若干个同 心圆磁道(逻辑上的,是不可见的。)每个盘片的划分规则通常是一样的。这样每个盘片的半 径均为固定值R 的同心圆再逻辑上形成了一个以电机主轴为轴的柱面(Cylinders),从外至里 编号为0、1、2……每个盘片上的每个磁道又被划分为几十个扇区(Sector),通常的容量是 512byte,并按照一定规则编号为1、2 、3……形成Cylinders×Heads×Sector 个扇区。这三个 参数即是硬盘的物理参数。我们下面的很多实践需要深刻理解这三个参数的意义。 三、磁盘引导原理: 3.1 MBR(master boot record)扇区: 计算机在按下power 键以后,开始执行主板bios 程序。进行完一系列检测和配置以后。 开始按bios 中设定的系统引导顺序引导系统。假定现在是硬盘。Bios 执行完自己的程序后 如何把执行权交给硬盘呢。交给硬盘后又执行存储在哪里的程序呢。其实,称为mbr 的一 段代码起着举足轻重的作用。MBR(master boot record), 即主引导记录,有时也称主引导扇区。 位于整个硬盘的0 柱面0 磁头1 扇区(可以看作是硬盘的第一个扇区) ,bios 在执行自己固有 的程序以后就会jump 到mbr 中的第一条指令。将系统的控制权交由mbr 来执行。在总共 512byte 的主引导记录中,MBR 的引导程序占了其中的前446 个字节(偏移0H~偏移1BDH), 随后的64 个字节(偏移1BEH~偏移1FDH)为DPT(Disk PartitionTable ,硬盘分区表) ,最后的 两个字节“55 AA”(偏移1FEH~偏移1FFH)是分区有效结束标志。 MBR 不随操作系统的不同而不同,意即不同的操作系统可能会存在相同的MBR ,即使 不同,MBR 也不会夹带操作系统的性质。具有公共引导的特性。 我们来分析一段mbr 。下面是用winhex 查看的一块希捷120GB 硬盘的mbr 。 你的硬盘的MBR 引导代码可能并非这样。不过即使不同,所执行的功能大体是一样的。 这里找wowocock 关于磁盘mbr 的反编译,已加了详细的注释,感兴趣可以细细研究一下。 我们看DPT 部分。操作系统为了便于用户对磁盘的管理。加入了磁盘分区的概念。即将 一块磁盘逻辑划分为几块。磁盘分区数目的多少只受限于C~Z 的英文字母的数目,在上图 DPT 共64 个字节中如何表示多个分区的属性呢?microsoft 通过链接的方法解决了这个问题。 在DPT 共64 个字节中,以16 个字节为分区表项单位描述一个分区的属性。也就是说,第 一个分区表项描述一个分区的属性,一般为基本分区。第二个分区表项描述除基本分区外的 其余空间,一般而言,就是我们所说的扩展分区。这部分的大体说明见表1。 注:上表中的超过1 字节的数据都以实际数据显示,就是按高位到地位的方式显示。存 储时是按低位到高位存储的。两者表现不同,请仔细看清楚。以后出现的表,图均同。 也可以在winhex 中看到这些参数的意义: 说明:每个分区表项占用16 个字节,假定偏移地址从0 开始。如图3 的分区表项3 。分 区表项4 同分区表项3 。 1、0H 偏移为活动分区是否标志,只能选

文档评论(0)

2105194781 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档