按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!
提供了可能。 80年代末期IBM对硬盘发展的又一项重大贡献,即发明了MR(Magneto Resistive)磁阻,这种磁头在读取数据时对信号变化相当敏感,使得盘片的存储密度能够比以往20MB每英寸提高了数十倍。 1991年IBM生产的3。5英寸的硬盘使用了MR磁头,使硬盘的容量首次达到了1GB,从此硬盘容量开始进入了GB数量级。 1999年9月7日,Maxtor宣布了首块单碟容量高达10。2GB的ATA硬盘,从而把硬盘的容量引入了一个新里程碑。 2000年2月23日,希捷发布了转速高达15,000RPM的Cheetah X15系列硬盘,其平均寻道时间只有3。9ms,这可算是目前世界上最快的硬盘了,同时它也是到目前为止转速最高的硬盘;其性能相当于阅读一整部Shakespeare只花。15秒。此系列产品的内部数据传输率高达48MB/s,数据缓存为4~16MB,支持Ultra160/m SCSI及Fibre Channel(光纤通道),这将硬盘外部数据传输率提高到了160MB~200MB/s。总得来说,希捷的此款(〃捷豹〃)Cheetah X15系列将硬盘的性能提高到了一个新的里程碑。
2000年3月16日,硬盘领域又有新突破,第一款〃玻璃硬盘〃问世,这就是IBM推出的Deskstar 75GXP及Deskstar 40GV,此两款硬盘均使用玻璃取代传统的铝作为盘片材料,这能为硬盘带来更大的平滑性及更高的坚固性。另外玻璃材料在高转速时具有更高的稳定性。此外Deskstar 75GXP系列产品的最高容量达75GB,是当时最大容量的硬盘,而Deskstar 40GV的数据存储密度则高达14。3十亿数据位/每平方英寸,这再次涮新数据存储密度世界记录
第三节 原来如此
前面已经分析过硬盘的结构,在一片一片的磁性介质之上,通过低级格式化(建立一些基本的结构,扇区、分区等等),硬盘就可以被操作系统所使用了,操作系统在实际进行文件读写之前,需要使用高级格式化的功能,建立起适当的文件系统,目前主流的文件系统包括:
文件分配表(FAT)文件系统:是视窗3。x和DOS一直使用的文件系统;Windows95使用的是扩展FAT文件系统;WindowsNT文件系统则在继续支持16位文件系统的同时,还支持两种32位的文件系统WindowsNT文件系统(NTFS)和高性能文件系统(HPFS),视窗98推出了新的FAT32文件系统,Linux操作系统主要使用的是扩展文件系统第二版(EXT2),这几种文件系统各有优缺点,适合于不同的应用目的。
一、文件分配表(FAT)系统 FAT文件系统1982年开始应用于MS…DOS中。
FAT文件系统主要的优就是它可以由多种操作系统访问,如MS…DOS、Windows3。x、Windows5、WindowsNT和OS/2等。遗憾的是FAT文件统不支持长文件名。人们给文件命名时受8个字符名3个字符扩展名8。3命名规则限制。同时FAT文件系统无法支持系统高级容错特性, 不具有内部安全特性等。
二、扩展文件分配表(VFAT)系统 在Windows95中,通过对FAT文件系统的扩展,长文件名问题得到了善解决,这也就是人们所谓的扩展FAT(VFAT)文件系统。在Windows95 中,文件名可长达255个字符,所以人们很容易通过名字来表现文件内。但是为了同MS…DOS和Win16位程序兼容,它仍保留有扩展名。它同也支持文件日期和时间属性,为每个文件保留了文件创建日期/时 间、文件最近被修改的日期/时间和文件最近被打开的日期/时间这三个 日期/时间戳。
VFAT支持长文件名的方式是比较简单的,因此具有下面的一些局限性:
1。由于长文件名将要占用多个目录项,因此,如果在根目录中建立文件名文件,将会影响根目录中可存放文件的总数目;如果在 子目录中建立长文件名文件,将会多占用一些磁盘空间。
2。在MS…DOS下删除一个或改变一个由长文件名转换而来的文件名, 将丢失其长文件名占用的用于保存长文件名的名字字符目录项和 保存长文件名的类型信息目录项,这些目录项如果不做特殊处理 的话,在一般MS…DOS下将永久无法使用。
3。一些现有的基于DOS的磁盘管理实用程序(如磁盘碎片消除工具、 磁盘位编辑器和一些磁盘备份软件)处理FAT表项时,可能会破 坏FAT表的长文件名项,但相应的8。3文件名不受影响。因此,我们 应该尽可能使用Windows95提供的磁盘管理实用程序来执行文件备 份、恢复等操作,以保留长文件名。
4。在MS…DOS和Windows3。x中运行的某些应用程序,由于它不能识别长 文件名,使用这些应用程序打开带有长文件名的文件后再存储, 长文件名将丢失。或者将一个带有长文件名的文件拷贝到不支持 长文件名的系统中,则长文件名也将丢失。
三、WindowsNT文件系统 NTFS支持WindowsNT的所有优点。这些优点中最重要的是WindowsNT 的安全性。与NTFS文件系统相结合,能够指定谁能访问某一文件或目 录和对它作什么操作。在创建一个文件时,可以通知WindowsNT,哪些 用户可以读该文件,哪些用户可以修改该文件;另外,还可以指定谁 可以列出一个目录的内容和谁可以在该目录下增加文件。即使用户知 道文件的路径,仍可以禁止访问目录中的文件,只有NTFS分区中的文 件才有这种称为任意访问控制的能力。
NTFS的第二个优点是它具有先进的容错能力。NTFS使用一种称为 事务(transaction)登录的技术跟踪对磁盘的修改,因此,NTFS可以在几秒 钟内恢复错误而不是HPFS的几分钟或几小时(取决于HPFS分区的大小)。
NTFS的第三个优点是其文件不易受到病毒和系统崩溃的侵袭,这 种抗干扰直接源于WindowsNT操作系统的高度安全性能。即使在FAT 和NTFS两种文件系统在一个磁盘中并存时,由于NTFS文件系统只能被 WindowsNT识别,一般的病毒还是很难在NTFS文件系统中找到生存空间。
对于大分区,NTFS比FAT和HPFS效率都高,FAT和HPFS比NTFS需要更 多的空间来存储文件系统用于管理硬盘上文件和目录的信息。
此外,由于NTFS文件系统支持长文件名,人们给文件命名时现也 不需受8。3命名规则限制,从而可以给文件起一个反映其意义的文件 名。NTFS支持向下兼容,甚至可以从新的长文件名中产生老式的短文 件名。当文件写入可移动媒体(如软盘)时,它自动采用FAT文件名FAT文 件系统。
实际上NTFS的主要弱点是它只能被WindowsNT所识别。NTFS文件系 统可以存取FAT文件系统和HPFS文件系统的文件,但其文件却不能 被FAT文件系统和HPFS文件系统所存取,兼容性不是特别好。但从网络 安全性的角度来说,这种限制也是一种优点,它可以保证如果其他操 作系统没有Windows的安全控制,其用户就不能对NTFS分区中的文件进 行访问。另外,如果引导驱动器(也就是C驱动器)使用NTFS文件系统, 就不能使用Flexboot选项,因为DOS系统只能从C驱动器引导,但不能 从NTFS驱动器引导。相对WindowsNT来说,它的引导分区可以 是FAT、NTFS和HPFS。最后它还存在一个问题,那就是即使使用Windows NT驱动程序,许多备份实用程序在操作NTFS分区时仍有问题。
四、高性能文件系统 OS/2的高性能文件系统(HPFS)主要克服了FAT文件系统不适合于高 档操作系统这一缺点,HPFS支持长文件名,比FAT文件系统有更强的纠 错能力。WindowsNT也支持HPFS,使得从OS/2到WindowsNT的过渡更为容 易。HPFS和NTFS有包括长文件名在内的许多相同特性,但使用可靠性 较差,也较低级。
五、FAT32文件系统,视窗98操作系统引入了FAT32文件系统,它彻底解决了FAT16文件系统存在的诸多问题。所谓FAT32文件系统实际上就是用32位数据来描述磁盘簇的分配,而传统的磁盘管理是用16个二进制位(2个字节)来描述一个簇。从操作系统的结构上进行分析,可以知道FAT32文件系统并非仅仅简单地将FAT表转换成32位(即用4个字节来描述一个簇),而是带来了磁盘I/O参数、分区和FDT表及文件系统其它方面的变化。为了彻底了解FAT32文件系统对磁盘I/O参数的修改,本文对FAT32文件系统的结构进行了深入分析,揭示了FAT32文件系统存储和管理文件的算法。读懂FAT32文件系统的磁盘I/O参数,不但可以掌握直接访问磁盘文件的方法,而且可以在更高层次上发挥操作系统的功能。
FAT32文件系统对主引导扇区的改变
主引导扇区是硬盘独有的一个磁盘控制数据存储区域,其首要功能是存储有关硬盘分区的数据,它通常位于硬盘的0磁头0柱面1扇区。由于主引导扇区存放硬盘分区的有关数据,因此又称为分区扇区。分区数据对硬盘是至关重要的,分区数据的丢失或破坏将导致硬盘上的逻辑磁盘不能被系统识别,当然也就无法访问磁盘上存储的文件和数据。
根据对FAT32文件系统主引导扇区的分析可知,FAT32文件系统的主引导扇区在保持与FAT16文件系统主引导扇区兼容的基础上,针对FAT32文件系统的特点作了适当扩展。
FAT32文件系统主引导扇区对分区表数据结构的扩展仅限于增加了3个标识32位分区的类型标志,这3个增加的分区类型标志分别为0BH、0CH和0EH,用于描述FAT32文件系统的三种分区情况。对于扩展分区,则增加了一个类型标志0FH,表示Windows 98操作系统扩展分区。类型标志为0BH表示分区是FAT32分区,最大分区容量可以达到2047GB;为0CH表示的意义与0BH相同,但是对于INT 13H指令使用扩展的逻辑块地址(LBA)方式;为0EH表示的意义与06H相同,但是对于INT 13H指令使用扩展的逻辑块地址(LBA)方式;为0FH表示的意义与05H相同(扩展分区),但是同样对于INT 13H指令使用扩展的逻辑块地址方式。使用扩展的逻辑块地址方式是为了支持容量超过8GB的大容量硬