syslinux引导扇区不支持ntfs_Windows XP真的支持大于2T的硬盘吗?

自微软2001年推出Windows XP系统至今,已经有20年之久了,微软早已停止对Windows XP的技术支持,而很多电脑用户依然对Windows XP情有独钟、难分难舍。有人说,是由于大多数用户习惯了Windows XP的风格与操作习惯,也有人说是因为Windows XP支持一些更早的用户熟悉的软件。无论如何,现在使用Windows XP操作系统的仍然大有人在!同时,由于技术的飞速发展,各种软件越来越庞大,视频文件也越来越高清,这就需要更大容量的存储设备,当年几个G的硬盘早已捉襟见肘、羞愧难当躲进了收藏箱,于是,T字辈的硬盘成为了如今电脑的标配。可是,那些依旧为Windows XP痴狂的老电脑迷们,想使用超过2T的大容量硬盘,却遇到了新问题! 一、Windows XP不支持大于2T硬盘的原因众所周知,Windows XP属于32位操作系统,而32位操作系统的最大寻址能力为2的32次方,即4,294,967,296,这是针对磁盘扇区而言的寻址能力,一个扇区又等于512字节,那么,硬盘最大容量被32位系统限制在512×4,294,967,296=2T以内!操作系统位数与硬盘容量的关系表如附表所示:

c3cba9f233b3a4b8219d3d6c013e8b10.png

二、网传使用大硬盘的方法从20年前开始使用Windows XP的那些老牌电脑玩家,钻研精神的确令人佩服,他们心有不甘,夜以继日地研究如何让Windows XP突破2T硬盘的局限,终于得到一种“解决办法”,那就是替换大法!按照网上的方法,让Windows XP支持大于2T的硬盘,需要做两个方面的技术处理。 1. 硬盘必须采用GPT分区GPT是全局唯一标识分区表(GUIDPartition Table)的缩写,是一个实体硬盘的分区表的结构布局的标准,详细内容请参考GPT相关技术规范。Windows XP操作系统和一些专业的磁盘管理软件,已经可以很好的将传统的MBR转换为GPT。 2. 替换Disk.sys文件从Windows server 2003 SP2操作系统中提取disk.sys文件,或者从网上下载Windows server 2003 SP2操作系统的disk.sys文件,分别替换掉Windows XP操作系统下面三个路径的同名文件:1)system32\dllcache里面的disk.sys,完整路径通常是C:\WINDOWS\system32\dllcache\disk.sys;2)windows\Driver Cache\drivers.cab中的disk.sys,完整路径通常是C:\WINDOWS\Driver Cache\drivers.cab;3)system32\drivers里面的disk.sys,完整路径通常是C:\WINDOWS\system32\drivers\disk.sys。详细替换方法,感兴趣的读者可以参考网络相关介绍! 三、笔者亲测看了网上介绍的方法,笔者手中正好有一块新的4T硬盘,决定Windows XP系统上进行测试。插上4T硬盘,无论BIOS如何设置、无论五花八门的各种磁盘管理软件如何分区,Windows XP都只把4T硬盘当成1.6T硬盘,超过1.6T的磁盘空间根本就无法识别!按照上述网传方法一番折腾,哈哈,果然4T容量被全部识别,甚至还可以往里面“正常”读写数据!成功的喜悦让笔者煮了一杯香浓的咖啡,在阳台上晒了半天的太阳! 四、恶梦才刚刚开始咖啡喝完,太阳晒够了之后,把平常下载的各种科幻电影、动作大片通通往这个4T硬盘里面移动,总算给这些超大容量的视频找到了一个好的安身之处,窃喜!

26b49a9d4060ed46c2e0df724d598f86.png

没隔几天,桌面右下角弹出如图1所示的提示,打开“我的电脑”,发现磁盘Q成了“本地磁盘”(如图2所示),a2233e4aed56bd3dd0b8fb8c9156fece.png双击打开磁盘Q,提示未格式化(如图3所示)。

e85c6bd528178afabcb4fa7269640547.png原本以为自己在电脑数据恢复方面还“战功卓越”,这点问题只是小菜一碟,上T容量的视频文件只是躲迷藏玩,小别之后还会回到身边!通过十六进制编辑软件WinHex、还有DiskGenius、DataExplore、EasyRecovery、FinalData……通通用上,无论是自动扫描恢复数据,还是手动修复分区表、MFT等等,激战数日,这些上T容量的视频文件就这样离我远去了,连手都没有挥一挥,更别说带走一片云彩!该走的迟早会走的,该来的迟早也会来。痛定思痛,笔者“断定”是硬盘质量问题,或者是被病毒破坏,于是将这个4T硬盘的损坏分区重新快速格式化,又准备再次往里面下载各种视频资源。可是,好景不长,没隔几天,另外一个分区(磁盘R)又出问题了,也是出现该分区未格式化(如图4所示)!看来事情没那么简单,得深入分析问题出在哪里,也算给自己一个完整的交代,下面才是本文的重点!

e63e6bfbfa1d9ac5defb9d3e1d2df14e.png

五、深入分析4T硬盘在Windows XP是如何工作的平常在Windows XP下,笔者使用WinHex14.2进行十六进制编辑,用WinHex14.2打开4T硬盘,显示如图5所示的分区信息。

47c1640ee2a5e38e986c517e49b234bb.png

奇怪的是,笔者分区的顺序是0.8T、0.8T、1.0T、0.9T、202G这样五个分区,应该是WinHex14.2中分区1、分区3、分区5、分区2、分区4的顺序才对,Windows XP磁盘管理器看到的分区顺序,和实际分区的顺序一样(如图6所示)。

d6b357dc2d01f631a64f0c97f3b760c2.png

用高版本的WinHex19.8打开4T硬盘,看到的分区情况如图7所示,这和实际分区的顺序一样!

e60a010d9950d2a0b5e9cfb2dc652554.png

让人感到奇怪的是:WinHex14.2和WinHex19.8显示起始扇区不同,在WinHex19.8中显示的分区4,就是WinHex14.2中显示的分区2,起始扇区却不一样;在WinHex19.8中显示的分区5,就是WinHex14.2中显示的分区5,起始扇区也不一样。WinHex19.8显示的分区信息(如图8所示),分区4、分区5的“扩展名”显示的是“?”,正确的应该和分区1、2、3一样,显示“NTFS”。

ff386737625c8564cd30331450c92c12.png

两种不同的WinHex软件显示的分区“第1扇区”到底有什么关联?笔者把它转换为十六进制进行分析,从“第1扇区”有差异的两个分区的十六进制数据可以看出,“第1扇区”十六进制低4字节相同的(图9中方框所示),区别在于WinHex14.2没有高位第5字节0x01(十六进制的01H)。

df27c98c07dc8d4e50a0ca0e40b72283.png

虽然WinHex19.8可以正确显示分区的第1扇区数值,但无法访问3519069871以后的扇区(如图10所示)。

72f8d3977a83129ae14a558430d18cd9.png

笔者将4T硬盘连接到另外一台主板支持UEFI、操作系统为Windows 10的电脑,可以正常显示分区表,同时还在1207965696扇区找到了分区4(磁盘Q)的分区信息,在3095404544扇区找到了分区5(磁盘R)的分区信息。也就是说,在Windows XP系统中,虽然磁盘管理器能正常显示硬盘容量和分区信息,但在实际操作读写磁盘数据时,扇区数大于0x100000000的地址,其最高位1被忽略,所以0x148001800扇区的分区信息被写入到了0x48001800扇区,0x1B8802000扇区的分区信息被写入到了0xB8802000扇区。假设正确的扇区N,实际读写的地址却是N-4,294,967,296扇区(十六进制0x100000000对应的十进制是4,294,967,296),我们暂时不考虑分区3,只谈分区4和分区5,由于Windows XP操作系统只访问4个字节的扇区数,导致大于4,294,967,296扇区的数据被前移4,294,967,296个扇区(如图11所示)。

685454421048179e0b1eb74702cbc353.png

分区被前移之后,分区4、分区5的数据和小于4,294,967,296扇区(分区1、分区2、分区3)的数据重叠,读写时数据相互交错,导致数据频繁丢失,而且这种相互覆盖写操作,将导致数据严重破坏,无法恢复! 六、结论根据上面的分析,通过对系统文件的替换,Windows XP操作系统表面上是可以支持大于2T的硬盘了,但由于Windows XP操作系统自身的限制,导致了大于4,294,967,296扇区的数据被前移了4,294,967,296个扇区,和前面的数据相互覆盖,以至于硬盘数据频繁丢失!所以,Windows XP操作系统不支持大于2T的硬盘。 本文只在笔者的电脑上测试过,并且只针对Windows XP32位操作系统,没有在更多硬件和软件环境进行测试,结论仅供参考。如果读者有其它不同看法,欢迎共同探讨。重庆  唐奂知
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值