记忆是如何储存东西的?我还是不明白记忆是怎么储存东西的。现在我不知道为什么。
面、轨道和扇区
硬盘分区后,会分为边、道、扇区。需要注意的是,这些只是虚拟的概念,并不是真的在硬盘上。先说表面。硬盘一般由一片或几片圆形薄膜组成。正如我们所说,每个圆形薄膜都有两个“面”,都是用来存储数据的。按照面的数量依次称为0面,1面,2面...因为每个面都有读写头,所以也俗称0头和1头。根据硬盘容量和规格的不同,硬盘(或磁头)的数量也不一定相同,从2个到几十个不等。每边轨道号相同的轨道组合成一个圆柱体(如图1)。(图)
上面我们提到了赛道的概念。那么到底什么是赛道呢?由于磁盘是旋转的,连续写入的数据排列在一个圆上。我们称这样一个圆为轨道。(图2)如果读写头沿着圆膜的半径方向移动一定距离,后面写入的数据会被安排在另一个磁道上。根据硬盘规格的不同,磁道数从几百到几千不等;一个磁道可以容纳几千字节的数据,但主机往往不需要一次读写这么多,所以把磁道分成几段,每段称为一个扇区。一个扇区通常存储512字节的数据。扇区也需要编号。同一磁道中的扇区称为扇区1,扇区2...
为了提高效率,计算机以扇区为单位读写硬盘。即使计算机只需要存储在硬盘上的某个字节,也必须将该字节所在扇区的512字节一次性全部读入内存,然后使用所需的字节。但是,在上面,我们也提到过,硬盘上没有痕迹,表面上没有磁道和扇区的划分。虽然磁头可以按照合适的半径瞄准一个磁道,但是如何在一圈首尾相连的扇区中找出所需的扇区呢?原来,每个扇区不仅由512个字节组成,而且由计算机访问的这些数据的前端和后端的一些特定数据构成扇区边界标记,该标记包含扇区号等信息。计算机使用这些标志来识别扇区。
硬盘的数据结构
在上面,我们谈到了硬盘中数据存储的一般原理。为了更深入的了解硬盘,我们还必须对硬盘的数据结构有一个简单的了解。硬盘上的数据根据其不同的特性和功能大致可以分为五个部分:MBR区、DBR区、FAT区、DIR区和数据区。下面我们分别介绍一下:
1.MBR区域
MBR(主引导记录主引导记录区)?0磁道,0柱面和1扇区位于整个硬盘。但主引导扇区总共***512字节中,MBR只占446字节,其他64字节交给DPT(磁盘分区表)(见表)。最后两个字节“55,AA”是分区的结束标记。这整个构成了硬盘的主引导扇区。(图)
主引导记录包含硬盘的一系列参数和一个引导程序。硬盘引导程序的主要作用是在系统硬件完成自检后,检查分区表是否正确并在带有激活标志的分区上引导操作系统,并将控制权交给引导程序。MBR由分区程序(如Fdisk.exe)生成,不依赖于任何操作系统,硬盘引导程序也可以更改,实现多系统存储。
下面,我们用一个例子让大家更直观的了解主引导记录:
示例:80 01 01 00b Fe BF FC 3f 00 000 007 e86bb 00
这里我们可以看到前面的“80”是一个分区的激活标志,表示系统可以引导;“01 01 00”表示分区开头的头号为01,开头的扇区号为01,开头的柱面号为00;“0B”表示分区的系统类型为FAT32,其他常见的有04(FAT16)、07(NTFS);“FE BF FC”表示分区末的头号为254,分区末的扇区数为63,分区末的柱面数为764;“3F 00 00 00”表示第一扇区的相对扇区号为63;“7E 86 BB 00”表示扇区总数为12289622。
2.DBR地区
DBR(Dos引导记录)是指操作系统的引导记录区。通常位于硬盘的0磁道1柱面1扇区,是操作系统可以直接访问的第一个扇区。它包括一个引导程序和一个被称为BPB(Bios参数块)的这个分区的参数记录表。引导程序的主要任务是在MBR把系统控制权交给它的时候,判断这个分区和目录的前两个文件是否是操作系统的引导文件(以DOS为例,就是Io.sys和Msdos.sys)。如果它存在,将它读入内存,并将控制权交给文件。BPB参数块记录了该分区的重要参数,如起始扇区、结束扇区、文件存储格式、硬盘媒体描述符、根目录大小、fat数量、分配单元大小等。由高级格式程序(Format.com和其他程序)制作DBR。
3.脂肪区域
在DBR后面是我们熟悉的FAT(文件分配表)区域。在解释文件分配表的概念之前,先说一下集群的概念。当文件占用磁盘空间时,基本单位不是字节而是簇。一般来说,每簇软盘有1个扇区,每簇硬盘的扇区数量与硬盘总容量有关,可能是4,8,16,32,64...
同一个文件的数据不一定完全存储在磁盘的一个连续区域,而往往是分成若干段,像链一样存储。这种存储方式称为文件链式存储。因为段与段之间的连接信息(也就是FAT)是存储在硬盘上的,所以操作系统在读取文件时总能找到每个段的位置并正确读取。
为了实现文件的链式存储,需要准确记录硬盘上哪些簇已经被文件占用,同时也要为每个被占用的簇指明下一个存储后续内容的簇号。对于文件的最后一个簇,有必要指示该簇中没有后继簇。这些都是FAT表保存的,表中有很多条目,每个条目都记录了一个集群的信息。由于FAT对于文件管理的重要性,FAT有一个备份,即在原来的FAT后面构建一个相同的FAT。新形成的FAT中的所有项都被标记为“未被占用”,但如果磁盘在本地损坏,格式化程序会检测到损坏的簇,并在相应的项中将其标记为“坏簇”,因此将来保存文件时不会使用该簇。FAT项的数量相当于硬盘上簇的总数,每一项占用的字节数也要与簇的总数相适应,因为需要存储簇号。FAT有多种格式,最常见的有FAT16和FAT32。
4.迪尔县
DIR(目录)是根目录区,紧接着第二个FAT表(也就是备份FAT表),记录了根目录下每个文件(目录)的初始单位,文件的属性等等。在定位文件位置时,操作系统可以根据DIR中的起始单元和FAT表知道文件在硬盘中的具体位置和大小。
5.数据区
数据区是真正的数据存储场所,位于DIR区之后,占据了硬盘上大部分的数据空间。
磁盘文件系统
经常听到专家讲FAT16、FAT32、NTFS等术语。朋友们可能隐约知道这是指文件系统。但是,这么多文件系统是什么意思呢?今天,让我们一起来学习:
1.什么是文件系统?
所谓文件系统,就是操作系统中组织、存储和命名文件的结构。磁盘或分区与其包含的文件系统之间的差异非常重要。大多数应用程序基于文件系统运行,不能在不同的文件系统上工作。
2.文件系统系列
有许多常用的文件系统。MS-DOS和Windows 3.x使用FAT16文件系统,Windows 98默认也使用FAT16。Windows 98和Me可以同时支持FAT16和FAT32文件系统。Windows NT支持FAT16和NTFS,Windows 2000可以支持FAT16、FAT32和NTFS,Linux可以支持很多文件系统,比如FAT16、FAT32、NTFS、Minix、ext、ext2、xiafs、HPFS和VFAT。下面,笔者简单介绍一下这些文件系统的相关情况:
(1)FAT16
FAT的全称是“文件分配表”,最早应用于MS-DOS是在1982年。FAT文件系统的主要优点是可以允许多种操作系统访问,如MS-DOS、Windows 3.x、Windows 9x、Windows NT、OS/2等。这个文件系统遵循8.3的命名规则(即文件名最多8个字符,扩展名3个字符)。
(2)VFAT
VFAT的意思是“扩展文件分配表系统”,主要用于Windows 95。它扩展了FAT16文件系统,并支持最长可达255个字符的长文件名。VFAT仍然保留扩展名并支持文件日期和时间属性,并为每个文件保留三个日期/时间:文件创建的日期/时间、文件最近修改的日期/时间和文件最近打开的日期/时间。
(3)FAT32
FAT32主要用于Windows 98系统,可以增强磁盘性能,增加可用磁盘空间。因为一个集群的大小比FAT16小很多,所以可以节省磁盘空间。它支持2G以上的分区大小。朋友们可以从附表中看到,FAT16与FAT32不同。
⑷HPFS
高性能文件系统。OS/2的高性能文件系统(HPFS)主要克服了FAT文件系统不适合高端操作系统的缺点。HPFS支持长文件名,比FAT文件系统有更强的纠错能力。Windows NT还支持HPFS,这使得从OS/2到Windows NT的过渡更加容易。HPFS和NTFS有许多共同的特征,包括长文件名,但是它们的可靠性很差。
(5)非关税壁垒
NTFS是专用于Windows NT/2000操作系统的高级文件系统,支持文件系统故障恢复,尤其适用于大存储介质和长文件名。NTFS的主要弱点是只能被Windows NT/2000识别。虽然它可以读取FAT文件系统和HPFS文件系统的文件,但是它的文件不能被FAT文件系统和HPFS文件系统访问,所以兼容性更有问题。
ext2
这是Linux中使用最多的文件系统,因为它是专门为Linux设计的,速度最快,占用CPU最少。Ext2既可用于标准块设备(如硬盘),也可用于可移动存储设备(如软盘)。现在出现了新一代的Linux文件系统,如SGI的XFS、ReiserFS和ext3文件系统。
总结:虽然上面作者介绍了六种文件系统,但是FAT16/32和NTFS是主导,FAT32是使用最多的。只要右击我的电脑中某个驱动器的属性,就可以看到常规选项中使用的文件系统(如图)。
清楚地识别硬盘号
目前电子市场的硬盘品牌无非是IBM、Quantum、希捷、迈拓等“老字号”。这些硬盘型号的数字各不相同,令人眼花缭乱。其实这些数字都有一定的规律,表示某种特异性?的意思。一般来说,从硬盘的序列号就可以知道硬盘的性能指标,包括接口?类型、速度、容量等。作为DIY的朋友,只有真正掌握了硬盘号的正确识别,买硬盘才方便很多(以免被“黑”),至少不会被卖的人会说什么是什么。这里有一些例子供你参考。
一.国际商用机器公司
IBM是硬盘行业的巨头,产品几乎覆盖了所有硬盘领域。而且IBM是去年硬盘容量和价格战的始作俑者。多亏了IBM,我们今天可以使用既便宜又大容量的硬盘。
IBM的每个产品都分为几个系列,其命名方式是:产品名称+系列代码+接口类型+磁盘大小+速度+容量。以Deskstar 22GXP的13.5GB硬盘为例。硬盘的型号为:DJNA-371350,字母D代表Deskstar产品,JN代表Deskstar25GP和22GP系列,A代表ATA接口,3代表3寸盘,7代表7200 rpm产品,后四位是65438+的硬盘容量。IBM序列号(IDE)具有以下含义:
TT=Deskstar 16GP或14GXP JN=Deskstar 25GP或22GXP RV=Ultrastar 18LZX或36ZX。
接口类型的含义如下:a = ATA。
s和u = ultra SCSI,Ultra SCSI Wide,Ultra SCSI SCA,增强型SCSI,
增强型扩展SCSI(SCA)
C =串行存储架构连续存储系统SCSI L= =光纤通道SCSI
二、迈拓(迈拓)
迈拓是美国现代电子公司的独立子公司。过去它的产品也同时覆盖了IDE和SCSI,但由于SCSI产品缺乏竞争力,最终放弃了这个高端市场,专注于IDE硬盘。所以,迈拓应该是当今最独家的硬盘厂商。
MAXTOR硬盘编号规则如下:第一名+容量+接口类型+磁头数量,MAXTOR?从第四代钻石开始,它的第一个数字就是9,一直延续到现在,所以今天你在电子市场上能看到的迈拓硬盘的第一个数字基本都是9。另外,MAXTOR number中有一个磁头数的概念,因为MAXTOR硬盘是每盘存储的发起者,所以每盘存储要从其硬盘模型中的磁头数来体现。每个磁盘的存储量= 2 *硬盘总容量/磁头数量。
现在以钻石Max Plus 6800的10.2 GB硬盘为例来说明:这个硬盘?型号为91024U3,9为第一,1024为容量,U为接口类型UDMA66,3表示硬盘有三个头,表示其中一个盘的一面有数据。每盘存储量为2*10.2/3=6.8GB. MAXTOR硬盘接口类型字母含义如:
A = Pio模式d = udma33模式u = udma66模式。
第三,希捷(SEAGATE)
希捷科技是世界上最大的磁盘驱动器,磁?磁盘和读写头制造商,该公司一直是IBM、康柏、索尼等行业的主要硬盘供应商。希捷还保持着业界首款10000 rpm硬盘(捷豹猎豹系列SCSI)的记录和最大容量(捷豹III 73GB)的记录,可见公司的实力。但是呢?因为希捷一直专注于高端应用(如SCSI硬盘)而不特别注重低端家用产品的开发,所以在DIY主眼中不如quantum等硬盘供应商?。好在希捷及时注意到了这个问题,不久前投入市场的梭鱼系列一扫希捷的硬盘。以前在每盘存储,速度,噪音,外频异常的情况下都能稳定工作。在质量和综合性能方面的缺点。
希捷硬盘系列的产品名称从低端到高端依次为U4系列、Medalist系列、U8系列、Medalist Pro系列、Barracuda系列。其中Medalist Pro和Barracuda系列为7200 rpm产品,其他为5400 rpm产品。硬盘的型号都是以ST开头,现在以酷鱼10.2GB硬盘为例来说明。硬盘的型号为:ST310220A,ST后的第一位数字代表硬盘的大小,3表示硬盘使用的是3英寸的磁盘。现在基本没有其他规格的硬盘了,你看?大部分硬盘的位数都不是3,3后面的1022代表硬盘格式化后的容量是10.22GB,最后一位0代表7200转的产品。这一点不要和希捷之前的入门级产品Medalist ST38420A混淆,大多数希捷Medalist Pro系列都是以7200 rpm硬盘结尾的产品开头,其他数字(包括1和2)以5400 rpm结尾的产品开头。型号末尾的字母是硬盘的接口类型。希捷硬盘接口类型的字母含义如下:
A=ATA UDMA33或UDMA66 IDE接口AG是笔记本电脑专用的ATA接口硬盘。
w是超宽SCSI,
其数据传输速率为每秒40MB,n为超窄SCSI,数据传输速率为每秒20MB。
ST34501W/FC和ST19101N/FC中的FC(光纤通道)代表光纤通道,可提供高达每秒100MB的数据传输速率,支持热插拔。
硬盘和接口标准的发展历史
首先,硬盘的历史
说起硬盘的历史,就不能不提到蓝色巨人IBM所扮演的重要角色,它发明了硬盘,并为其发展做出了一系列重大贡献。在磁盘系统发明之前,计算机使用穿孔纸带和磁带来存储程序和数据。这些存储方式不仅容量低、速度慢,而且还有一个很大的缺陷:它们都是顺序存储的,为了读取后面的数据,必须从头开始,因此无法实现对数据的随机存取。
1956年9月,IBM向世界展示了第一个商用硬盘IBM 350 RAMAC(随机存取方法的核算和控制)。这个系统的总容量只有5MB,却是一个由50个直径24英寸的磁盘组成的庞然大物。1968年,IBM首次提出“Winchester”温彻斯特技术。“温彻斯特”技术的本质是:“利用一个密封的、固定的、高速旋转的镀盘,磁头沿盘的径向移动,磁头悬浮在高速旋转的盘的上方,不与盘直接接触”,这就是现代硬盘的雏形。1973年,IBM制造了第一个采用温彻斯特技术制造的硬盘,硬盘技术的发展有了正确的结构基础。1979年,IBM又发明了薄膜磁头,使进一步缩小硬盘体积、增加容量、提高读写速度成为可能。70年代末80年代初是微型计算机的萌芽期,这一时期诞生了包括希捷、量子、迈拓在内的许多著名硬盘厂商。1979年,IBM的两位员工阿兰·舒加特和费尼斯·康纳决定开发一种5.25英寸软驱大小的硬盘驱动器。他们离开IBM后,希捷公司成立了。次年,希捷发布了第一款适用于微型计算机的硬盘,容量为5MB,体积与软驱差不多。
PC时代之前的硬盘系统的特点是体积大、容量小、速度慢、价格高,因为当时计算机的应用范围太小,技术和市场的关系相互制约,限制了整个计算机行业包括存储行业的发展。20世纪80年代末,IBM对硬盘的发展做出了另一项巨大贡献,那就是发明了MR(磁阻)磁头,它在读取数据时对信号变化相当敏感,使磁盘的存储密度可以比以前的每英寸20MB提高几十倍。1991年,IBM生产的3.5寸硬盘使用了MR磁头,使得硬盘容量首次达到1GB,硬盘容量开始进入GB量级时代。1999年9月7日,Maxtor)_ Company _公布了首款每盘存储高度为10.2GB的ATA硬盘,从而将硬盘的容量引入了一个新的里程碑。
第二,接口标准的发展
(1)IDE和EIDE的起源
最早的IBM PC没有硬盘,它的BIOS和DOS 1.0操作系统也不支持任何硬盘,因为系统的内存只有16KB,连软驱和DOS都是可选的。后来DOS 2推出了子目录系统,增加了对“大容量”存储设备的支持,于是一些公司开始销售IBM PC的硬盘系统。这些硬盘与控制卡和独立电源一起被包装在一个外部盒子中,并通过电缆连接到插入扩展槽的适配器。为了使用这样的硬盘,有必要从软驱启动并加载一个特殊的设备驱动程序。
1983年,IBM推出PC/XT。XT虽然还是用8088 CPU,但是配置高了很多。IBM内置10MB的硬盘,将控制卡的功能集成到一个接口控制卡中,构成了我们常说的硬盘控制器。它的接口控制卡上有一个ROM芯片,里面存储着硬盘读写程序。直到基于80286处理器的PC/AT的推出,硬盘接口控制程序才被加入到主板的BIOS中。
PC/XT和PC/AT机器使用的硬盘称为MFM硬盘或ST-506/412硬盘。MFM(modified frequency modulation)指的是一种编码方案,而ST-506/412是希捷开发的硬盘接口。ST-506接口不需要任何特殊的电缆和连接器,但它需要。
1983年,迈拓开发了ESD(增强型小驱动接口)接口。这个接口把编解码器放在硬盘本身,理论传输速度是ST-506的2 ~ 4倍。但由于成本过高,90年代后逐渐被淘汰。
IDE(Integrated Drive Electronics)实际上是指将控制器与盘体集成在一起的硬盘驱动器,从而减少了硬盘接口的线缆数量和长度,增强了数据传输的可靠性,使硬盘更容易制造,也更方便用户安装。IDE接口也叫ATA(高级技术附件)接口。
ATA接口最初是由CDC、Compaq和Western Digital在1986开发的。他们决定使用40芯电缆。最早的IDE硬盘大小为5英寸,容量为40MB。自20世纪80年代后期以来,ATA接口逐渐取代了其他旧接口。
20世纪80年代末,IBM发明了MR(磁阻)磁头,它在读取数据时对信号变化非常敏感,使得磁盘的存储密度比以前的20MB/in2提高了几十倍或上百倍。1991年,IBM生产的3.5寸硬盘0663-E12使用了MR磁头,容量首次达到1GB。从此,硬盘的容量进入了GB的量级,直到今天,大部分硬盘仍然使用MR磁头。
当谈到硬盘时,人们经常谈到PIO模式和DMA模式。它们是什么?目前,硬盘和主机之间的数据交换有两种方式。一种方法是通过CPU执行I/O端口指令来读写数据。另外,一种是没有CPU的DMA模式。
PIO模式是编程输入/输出模式。该模式使用PC I/O端口指令传输所有命令、状态和数据。因为驱动器中有多个缓冲区,所以一般使用I/O字符串操作指令来读写硬盘。这种指令只需取一次指令就可以完成多次I/O操作,因此有可能达到很高的数据传输率。
DMA是直接内存访问。意味着数据不经过CPU直接在硬盘和内存之间传输。在多任务操作系统中,如OS/2、Linux、Windows NT等。,当磁盘传输数据时,CPU可以腾出时间做其他事情,而在DOS/Windows3。x环境下,CPU要等待数据传输完成,所以在这种情况下,DMA模式意义不大。
有两种类型的DMA模式:第三方DMA和第一方DMA(或总线控制DMA)。第三方DMA通过系统主板上DMA控制器的仲裁获得总线并传输数据。第一方DMA完全由接口卡上的逻辑电路完成,这当然增加了总线主控接口的复杂度和成本。现在,所有较新的芯片组都支持总线主控DMA。
(2)SCSI接口
小型计算机系统接口是与ATA完全不同的接口。它不是专门为硬盘设计的,而是一种总线型系统接口。每条SCSI总线可以连接八个SCSI设备,包括SCSI控制卡。SCSI的优点是支持多种设备,传输速率比ATA接口快很多,但价格也高,独立总线使其占用CPU低。最早的SCSI是由美国的Shugart公司(希捷公司的前身)在1979年制定的。90年代初,SCSI发展到SCSI-2,1995推出SCSI-3,俗称Ultra SCSI,1997推出Ultra 2 SCSI (FAST-40)。采用LVD(低压差分)传输方式,16位Ultra2SCSI(LVD)接口最高传输速率可达80MB/S,允许最长接口电缆为12m,大大增加了设备的灵活性。1998年,数据传输速率更高的Ultra160/m SCSI(FAST-80 under Wide)规格正式公布,其最高数据传输速率为160 MB/s,Quantum推出的Atlas10K、Atlas IV等产品支持Ultra3 SCSI的ultra 160/m传输。
SCSI硬盘传输性能极佳。但是大部分主板都没有内置SCSI接口,这就需要安装相应的SCSI卡来连接SCSI硬盘。目前SCSI卡有三种正式标准,分别是SCSI-1、SCSI-2和SCSI-3,以及一些中间版本。为了获得SCSI硬盘的最佳性能,需要保证SCSI卡和SCSI硬盘具有相同的版本(目前新生产的SCSI硬盘和SCSI卡是向前兼容的,版本不一定相同)。
(3)IEEE 1394:IEEE 1394又称火线或P1394,是一种高速串行总线。现有的IEEE 1394标准支持100Mbps、200Mbps和400Mbps的传输速率。未来会达到800Mbps,1600Mbps,3200Mbps甚至更高。如此高的速度使其有可能用作硬盘、DVD和CD-r om等大容量存储设备的接口。IEEE1394有望在未来取代现有的SCSI总线和IDE接口,但由于成本高、技术不成熟,目前使用IEEE1394接口的产品仍然很少,硬盘就更少了。