寻求(某种程度上)关于支持> 2 TB硬盘驱动器的更好解释


9

今天,在Google搜索时,我偶然发现了一些帖子,声称Seagate计划在2010年晚些时候推出3TB驱动器。不幸的是,我看过的东西似乎包含了一些小知识,我认为这些信息并不合适。(我将链接到一些示例,但目前每个帖子仅允许1个链接)。

现在,我真的没有任何“需求”可以更好地理解其底层乏味的细节。我只是好奇。并感到困惑。

所以...有些问题我希望有人能提供比我可能回答的更好的信息。

  1. 关于硬件和软件中潜在寻址问题的讨论使我感到困惑。断言是,为了绕过当前限制访问大于2 TB(1 TB =2⁴⁰B)的硬盘,Long LBA addressing (LLBA)需要一种称为的东西Command Descriptor Block

    好的。但是我认为上一次出现此问题时,可以通过将LBA字段的长度从28位扩展到48位来解决。(还记得这个网站吗?www.48bitlba.com)6字节的LBA显然足够大,因此LLBA演讲的内容。我以为这一切都是由Win XP SP2修复的,如果不是更快的话?当然,所有硬件都应完成任务,不是吗?

  2. 据我了解,对于大于2 TB的驱动器,真正的问题是主引导记录(MBR)中的4字节LBA字段目前用于分区几乎所有硬盘。最可能的解决方案是迁移到英特尔的GUID分区表(GPT)。GPT对LBA使用8个字节的字段。

    在这种情况下,我不了解的是从使用GPT的3TB驱动器启动Windows的问题。当然,当前的PC BIOS不知道如何识别或使用GPT。但是每个GPT都在扇区0中带有一个所谓的“安全”或“防护” MBR。

    苹果已经使用MBR的混合版本来允许他们在其Intel Mac(也称为Boot Camp)上启动Windows。难道不能做类似的事情来允许PC BIOS识别并从3 TB或更大驱动器中的前2 TB内的分区启动吗?

我还有更多的问题,例如4K领域在哪些方面适合所有这些领域。但这可能是我刚闭嘴并将其发布的时候了。;-)

-非理性的约翰

Answers:


6

关于“长LBA”的说法似乎源于一位希捷产品经理。她可能的意思是,即使48位LBA是硬件标准,但32位OS和驱动程序可能不支持全部48位,因为(a)它们是32位,这更麻烦,并且(b)无论如何,MBR仅支持32位分区,因此何必麻烦。

通过采用48位LBA打破了128GB的壁垒,这在ATA规范的硬件方面都从28位提高到了原来的水平。并且在操作系统/驱动程序方面,以确保它们未对旧的28位限制进行硬编码。您可能会说,当前编写良好的驱动程序实际上符合实际的48位限制,但是很容易看出链中某个地方是如何走出一条简单路的,并且仅在其32位驱动程序中支持32位。鉴于32位OS仍在淘汰中​​,因此,确保所有这些工作均不值得一试。

正如您所说,真正的问题(至少对于Windows是这样)是从基于BIOS的(非EFI)计算机引导GPT磁盘。保护MBR旨在使整个磁盘看起来像是一个未知分区,因此,支持BIOS / MBR的计算机甚至不会碰它。您可以创建混合磁盘,以便MBR还包含其他条目,用于2TB屏障以下的分区。但是,此类混合磁盘非常脆弱(使用MBR或GPT分区工具很容易造成破坏),并且不再是正式的GPT磁盘。您也不引导任何GPT分区,而是引导MBR分区。如果您只想将GPT分区用作数据驱动器,那就可以了。

为什么BIOS无法启动GPT?简短的答案是它们还没有,并且为了添加该功能,您需要更智能的BIOS。这就是EFI的目的。

4KB扇区将为您提供带32位LBA的16TB磁盘。(较少的较大扇区意味着可能会减少I / O开销。)但是必须编写所有OS和驱动程序,甚至某些应用程序以支持可变大小的扇区。您所需要的只是一个扇区大小被硬编码为512的地方。因此,4KB扇区也不是一个“简单”的解决方案,因为它将需要许多方面的大量工作。但是,如果您打算编写将来的软件来支持GPT(与扇区大小无关的)和可变大小的扇区,则在某些时候可能会将其用作常用方法。


3

当然 可以从BIOS计算机上的GPT磁盘启动。只是窗户声称它不能。

即使那不是真的。您可以从GPT磁盘上的BIOS计算机引导Windows:您只需要一个很小的附加MBR磁盘即可容纳引导文件。用于其他操作系统的硬盘,具有备用(小)分区,软盘,USB驱动器(假定)...

引导至Windows安装/修复光盘。在棒上创建系统驱动器,并用于bcdboot将启动文件放在棒上。使用添加一个引导扇区bootsect。将更{bootmgr} device改为boot。从棍子引导。

步骤在这里详细说明。


0

在这种情况下,我不了解的是从使用GPT的3TB驱动器启动Windows的问题。

在传统的BIOS系统上,BIOS从磁盘加载引导扇区,并以16位实模式运行该扇区。然后,需要从引导扇区加载的代码找到并正确加载操作系统。

MS从未在其实模式加载程序中实现GPT支持。因此,它无法读取GPT分区表并启动其余的OS。因此,要从GPT磁盘启动Windows,您要么必须使用uEFI代替传统的BIOS(如果您的主板支持它并且Windows版本足够新,就可以了),或者使用某种形式的变通方法,例如第三方加载程序,混合分区类型或用于引导的单独磁盘。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.