2T以上硬盘及GPT分区出现未使用容量

更新时间:2024-07-04 09:21:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

2T以上硬盘及GPT分区:Windows用户的噩梦?

硬盘容量限制问题再现!各位打算用2T以上硬盘的朋友们请注意了! 【 现有的PC机架构,是沿用了数十年的主板BIOS+硬盘MBR分区的组合模式。随着不久的将来(2009年?)硬盘容量突破2TB,BIOS+MBR组合估计会被主板EFI和硬盘GPT分区的组合模式取代了。

沿用了数十年的PC机主板架构是BIOS模式。但在2004年,微软和英特尔共同推出一种名为可扩展固件接口(EFI)的主板升级换代方案。EFI,即可扩展固件接口(Extensible Firmware Inte***ce),EFI的位置很特殊,不像是BIOS那样是固件又是接口,EFI只是一个接口,位于操作系统与平台固件之间。到目前为止,现有的 PC机主板绝大部分还是BIOS模式,EFI主板寥寥可数。 取消GPT保护分区

确保自己硬盘中没有数据!

1. 打开开始菜单-〉运行,输入 diskpart ;

2. 输入 list disk ,列出当前所安装的磁盘;

3. 输入 select disk n (其中的 n 指的是磁盘的磁盘编号,就是需要转换的磁盘的编号);

4. 输入 clean all ,将指定的磁盘上所有扇区都设置为零(这样会完全删除磁盘上的所有数据),这一步需要一段时间;

5. 重新进入“计算机管理”的“磁盘管理”,这时系统会发现一个新磁盘,要求初始化,初始化导入这个磁盘,在“磁盘管理”里面可以设定当前磁盘为动态的还是静态的,然后新建分区,格式化为想要的格式就好了。格式化GPT保护分区

1.打开开始菜单→运行、输入diskpart

2.输入list disk,列出当前所安装的磁盘。

3.输入 select disk n (其中的 n 指的是磁盘的磁盘编号,就是需要转换的磁盘的编号);

4. 输入 clean all ,将指定的磁盘上所有扇区都设置为零(这样会完全删除磁盘上的所有数据),这一步需要一段时间(根据硬盘大小时间成正比,漫长啊!!);

5. 重新进入“计算机管理”的“磁盘管理”,这时系统会发现一个新磁盘,要求初始化,初始化导入这个磁盘,在“磁盘管理”里面可以设定当前磁盘为动态的还是静态的,然后新建分区,格式化为想要的格式就好了。

其实不难看出,即使电脑系统发展到了win7时代,但某些问题的解决还是要靠DOS命令来解决,这些才是系统灵魂深处的东西 .. 】

现在市场上单碟500G的硬盘也已经面市,2T、2.5T硬盘在2009年也已经面市。硬盘容量突飞猛进,现1T硬盘价格早已降至600元左右,2T硬盘都已开始在用户中普及。

可是,2009年你想把旧硬盘换成2.5T硬盘或者更大的硬盘? 且慢!!

首先,先来看看下图——计算机管理功能中的磁盘管理——出现未指派空间!

下面我们来回顾下过去并对硬盘容量限制情况做下技术分析:

其实,硬盘容量限制问题很早就出现了,最初是528MB、2.1GB,后来是3.2GB、4.2GB,但引起人们注意当属8.4GB容量的硬盘。虽然LBA(Ligical Block Address)逻辑块寻址模式突破了DOS系统下8.4GB容量的限制,但由于自身的限制,柱面的最大数是65536(216),磁头的最大数是16(24),扇区的最大数是255(28-1),因此能寻址的最大扇区数是267,386,880

(65536×16×255),一扇区是512字节,也就是说如果以CHS寻址方式,IDE硬盘的最大容量为136.9GB,这就是137GB容量限制的由来。

超过137GB容量的硬盘,可能会在一些主板上遭遇所谓的28bit LBA限制,当然主要是指一些推出时间较早的主板,但NVIDIA nForce2却仍然在使用28bit LBA IDE控制器。在这样的主板上虽然可以使用大容量的硬盘,但超出137GB以外的空间将无法识别,换句话说也就是被浪费了。

Technical Committee T13组织为了解决28bit LBA寻址模式的限制,对于ATA/ATAPI-6标准进行了一些修改,通过48bit LBA来支持更多的扇区,从而突破这一限制,其实后来Compaq、Microsoft、Maxtor联合推出的Big Drives规范就是T13组织提出的48bit方案为基础的,这种规范的中心思想就是增加CHS的位数,而柱面寄存器不变,这样就将原来LBA寻址中可用的寄存器空间从24bit提高到了48bit,可以寻址的扇区数就为281,474,976,710,655(65536×65535×65536),这样可支持的硬盘容量就达到了

281,474,976,710,655×512=144,115,188,075,855,872字节,大致相当于144PB(1PB=1000,000,000,000,000字节),在一定时间内应该是足够使用了。 从这里来说,支持2T,应该不成问题才对的啊?但为什么又会出现这个限制的呢,这个要从MBR说起。

MBR,主引导记录(Master Boot Record),也就是现有的硬盘分区模式。MBR分区的标准决定了MBR只支持在2TB以下的硬盘,超过2TB的硬盘只能管理2TB(参见后文MBR介绍)!为解决这个大问题,微软和英特尔在EFI方案中开发了GPT分区模式。

GPT,全局唯一标识分区表(GUID Partition Table),GUID,全局唯一标识符 (Globally Unique Identifier) 。GPT是EFI方案的一部分,但并不依赖于EFI主板,在BIOS主板的PC中也可使用GPT分区。与MBR最大4个分区表项的限制相比,GPT对分区数量没有限制,但Windows最大仅支持128个GPT分区。GPT可管理硬盘大小达到了18EB(1EB=1024PB=1,048,576TB),不过NTFS格式最大仅支持256TB。 对于使用2T以上硬盘的要求

由于MBR分区模式最大只能支持2TB硬盘,2.5T硬盘必须使用GPT分区模式!我们先未雨绸缪,看看Windows对GPT分区的支持情况:

1. Windows 95/98/ME、Windows NT 4、Windows 2000、Windows XP 32 位版本不支持GPT分区,只能查看GPT的保护分区,GPT不会被装载或公开给应用软件;

2. Windows XP x64 版本只能使用GPT磁盘进行数据操作,只有基于安腾处理器 (Itanium)的 Windows系统才能从 GPT 分区上启动;

3. Windows Server 2003 32bit Server Pack 1 以后的所有Windows 2003版本都能使用GPT分区磁盘进行数据操作,只有基于安腾处理器(Itanium)的Windows系统才能从 GPT 分区上启动;

4. Windows Vista 和 Windows Server 2008的所有版本都能使用GPT分区磁盘进行数据操作;但只有基于EFI主板的系统支持从GPT启动。

看到这里,我们知道了要想用2.5T硬盘:

1、首先,你得放弃2K和XP 32位版,改成人见人不爱的Vista或是人见人爱的Win7;

2、你还得把基于BIOS的主板给扔了,换成EFI主板,否则即使换成Vista了,也只能把2.5T硬盘当从盘用。

否则,我们就只能对2.5T硬盘干瞪眼,哗哗地流口水。。。

MBR介绍

在传统硬盘分区模式中,引导扇区是每个分区(Partition)的第一扇区,而主引导扇区是硬盘的第一扇区。它由三个部分组成,主引导记录MBR、硬盘分区表DPT和硬盘有效标志。在总共512字节的主引导扇区里MBR占446个字节,第二部分是Partition table区(分区表),即DPT,占64个字节,硬盘中

分区有多少以及每一分区的大小都记在其中。第三部分是magic number,占2个字节,固定为55AA。

MBR是不属于任何一个操作系统,也不能用操作系统提供的磁盘操作命令来读取它,但可以通过命令来修改和重写,如在minix3里面,可以用命令:installboot -m /dev/c0d0 /usr/mdec/masterboot来把masterboot这个小程序写到mbr里面,masterboot通常用汇编语言来编写。我们也可以用ROM-BIOS中提供的INT13H的2号功能来读出该扇区的内容,也可用软件工具Norton8.0中的DISKEDIT.EXE来读取。

用INT13H的读磁盘扇区功能的调用参数如下: 入口参数:AH=2 (指定功能号) AL=要读取的扇区数

DL=磁盘号(0、1-软盘;80、81-硬盘) DH=磁头号

CL高2位+CH=柱面号 CL低6位=扇区号

CS:BX=存放读取数据的内存缓冲地址 出口参数:CS:BX=读取数据存放地址 错误信息:如果出错CF=1 AH=错误代码

用DEBUG读取位于硬盘0柱面、0磁头、1扇区的操作如下: A>DEBUG -A 100

XXXX:XXXX MOV AX,0201 (用功能号2读1个扇区)

XXXX:XXXX MOV BX,1000 (把读出的数据放入缓冲区的地址为CS:1000) XXXX:XXXX MOV CX,0001 (读0柱面,1扇区) XXXX:XXXX MOV DX,0080 (指定第一物理盘的0磁头) XXXX:XXXX INT 13 XXXX:XXXX INT 3 XXXX:XXXX (按回车键) -G=100 (执行以上程序段)

-D 1000 11FF (显示512字节的MBR内容)

在windows操作系统下,例如xp,2003,Vista,windows7,有微软提供的接口直接读写mbr;

FILE * fd=fopen(\ char buffer[512];

fread(buffer,512,1,fd);

//then you can edit buffer[512] as your wish...... fseek(fd,0,SEEK_SET); //很重要

fwrite(buffer,512,1,fd); //把修改后的MBR写入到你的机器 fclose(fd); //大功告成 MBR组成

一个扇区的硬盘主引导记录MBR由如图6-15所示的4个部分组成。 ? 主引导程序(偏移地址0000H--0088H),它负责从活动分区中装载,并运行系统引导程序。

? 出错信息数据区,偏移地址0089H--00E1H为出错信息,00E2H--01BDH全为0字节。

? 分区表(DPT,Disk Partition Table)含4个分区项,偏移地址

01BEH--01FDH,每个分区表项长16个字节,共64字节为分区项1、分区项2、分区项3、分区项4。

? 结束标志字,偏移地址01FE--01FF的2个字节值为结束标志55AA,如果该标志错误系统就不能启动。

GPT介绍

GPT(Globally Unique Identifier Partition Table Format)是一种由基于 Itanium 计算机中的可扩展固件接口 (EFI) 使用的磁盘分区架构。与主启动记录 (MBR) 分区方法相比,GPT 具有更多的优点,因为它允许每个磁盘有多达 128 个分区,支持高达 18 千兆兆字节的卷大小,允许将主磁盘分区表和备份磁盘分区表用于冗余,还支持唯一的磁盘和分区 ID (GUID)。

与支持最大卷为 2 TB (terabytes) 并且每个磁盘最多有 4 个主分区(或 3 个主分区,1 个扩展分区和无限制的逻辑驱动器)的主启动记录 (MBR) 磁盘分区的样式相比,GUID 分区表 (GPT) 磁盘分区样式支持最大卷为 18 EB (exabytes) 并且每磁盘最多有 128 个分区。与 MBR 分区的磁盘不同,至关重要的平台操作数据位于分区,而不是位于非分区或隐藏扇区。另外,GPT 分区磁盘有多余的主要及备份分区表来提高分区数据结构的完整性。

在“磁盘管理”中的磁盘属性对话框中的“卷”选项卡上,具有 GPT 分区样式的磁盘显示为 GUID 分区表 (GPT) 磁盘,而具有 MBR 分区样式的磁盘显示为主启动记录 (MBR) 磁盘。如果发生下列意外事件,可以在 GPT 磁盘上执行 MBR 磁盘支持的操作:

在运行带有 Service Pack 1 (SP1) 的 Windows Server 2003 的基于 x86 的计算机和基于 x64 的计算机上,操作系统必须驻留在 MBR 磁盘上。其他的硬盘可以是 MBR 或 GPT。

在基于 Itanium 的计算机上,操作系统加载程序和启动分区必须驻留在 GPT 磁盘上。其他的硬盘可以是 MBR 或 GPT。

不能将 GPT 移至运行 Windows NT 4.0、Windows 2000、Windows XP 或 Windows Server 2003 的基于 x86 的计算机上。不过,可以将 GPT 磁盘从运行带有 SP1 的 Windows Server 2003 的基于 x86 的计算机或基于 x64 的计算机移至运行 Windows Server 2003 或 Windows XP 的基于 Itanium 的计算机上,反之亦然。

不能使用基于 Itanium 的 Windows 版本,将 GPT 磁盘从基于 Itanium 的计算机移至运行带有 SP1 的 Windows Server 2003 的基于 x86 的计算机或基于 x64 的计算机,然后启动该操作系统。在非基于 Itanium 的计算机上使用的 GPT 磁盘必须仅用于数据存储。

在单个动态磁盘组中既可以有 MBR,也可以有 GPT 磁盘。也使用将基本 GPT 和 MBR 磁盘的混合,但它们不是磁盘组的一部分。可以同时使用 MBR 和 GPT 磁盘来创建镜像卷、带区卷、跨区卷和 RAID-5 卷,但是 MBR 的柱面对齐的限制可能会使得创建镜像卷有困难。通常可以将 MBR 的磁盘镜像到 GPT 磁盘上,从而避免柱面对齐的问题。

可以将 MBR 磁盘转换为 GPT 磁盘,并且只有在磁盘为空的情况下,才可以将 GPT 磁盘转换为 MBR 磁盘。

不支持 EFI 系统分区的镜像。必须使用 bootcfg 命令克隆 EFI 系统分区。 不能在可移动媒体,或者在与群集服务使用的共享 SCSI 或 Fibre Channel 总线连接的群集磁盘上使用 GPT 分区样式。

可以使用 DiskPart.exe 命令行实用程序或 EFI 固件实用程序

Diskpart.efi 在基本 GPT 磁盘上创建分区。有关 DiskPart.exe 的详细信息,请参阅 DiskPart。有关“磁盘管理”管理单元的详细信息,请参阅磁盘管理概述。有关 Diskpart.efi 的详细信息,请参阅 Intel 网站。

在基于 Itanium 的计算机上的系统恢复方案中,请参阅计算机所附带的制造商文档来重新创建或恢复 GPT 磁盘。

有关管理 GPT 和 MBR 磁盘的详细信息,请参阅可扩展固件接口 或 Microsoft Windows 资源工具包网站上的“Disk Management”(磁盘管理)。

GPT的分区信息是在分区中,而不象MBR一样在主引导扇区,为保护GPT不受MBR类磁盘管理软件的危害,GPT在主引导扇区建立了一个保护分区(Protective MBR)的MBR分区表,这种分区的类型标识为0xEE,这个保护分区的大小在Windows下为128MB,Mac OS X下为200MB,在Window磁盘管理器里名为GPT保护分区,可让MBR类磁盘管理软件把GPT看成一个未知格式的分区,而不是错误地当成一个未分区的磁盘。

本文来源:https://www.bwwdw.com/article/l7n.html

Top