找回密码
 注册
美国原生IP服务器推荐-Yv.gs
【阿里云】2核2G云新老同享 99元/年,续费同价做网站就用糖果主机-sugarhosts.comJtti.com-新加坡服务器,美国服务器,香港服务器
查看: 202|回复: 0

微软畅谈Windows 8支持大容量硬盘、4KB扇区

[复制链接]
发表于 2011 年 12 月 1 日 17:52:10 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

×
虽然硬盘存储技术的进步越来越慢,但容量的增大是拦不住的。IDC最近预测称,2015年的时候单块硬盘的容量将达到8TB(单碟容量怎么也得2TB),是目前的两倍还多。因为硬件、软件设计上的缺陷,大容量硬盘曾在历史上多次造成麻烦,最近一次硬盘容量问题出现在2.2TB身上,因此在开发Windows 8的时候,微软就充分考虑了大容量硬盘的完整支持问题,以及新的4KB扇区格式。: a) {8 ^+ Z2 {( u& \
, e+ h6 |& \1 V
微软畅谈Windows 8支持大容量硬盘、4KB扇区
$ [6 E8 u+ ]4 [" Y, ~3 P* L
/ `: h8 r$ o6 ~8 ^硬盘寻址方法* W  U! X- @$ P9 @* c( m* V

1 M( d- W  g. k, o% S硬盘最初使用的寻址方法是柱面/磁头/扇区(CHS),通过分别指定柱面、磁头、扇区来确定某个数据块的确切位置,但这种方法在137GB以上容量硬盘面前就失效了。0 e9 K! j0 H6 J0 i1 `! f
; B  W1 V1 p8 j4 A+ W1 \) l
取而代之的是逻辑区块寻址(LBA),不再使用离散几何来指定扇区,而改用扇区编号来代表特定的数据块。每个扇区都有预定义的尺寸(之前是512字节),从0开始顺序编号,最大就是总容量除以扇区尺寸。
2 S" L* f& C, Y7 y1 m; X# F! D( j* [0 s' Z- }4 B
磁盘分区机制6 [, g* w' p5 F
. `  w2 j3 d8 \( D0 H0 R1 y
LBA寻址方法理论上支持超大硬盘容量,但实际上扇区的数量还受制于磁盘分区机制。
6 ^; d8 I' }# t0 D
1 {3 X$ M) C# n3 |6 l磁盘分区的概念可以追溯到二十世纪八十年代初,是系统管理员们为了方便使用不同文件系统存储数据而发明的。主引导记录(MBR)分区表支持最多32-bit信息,换算成字节数就是2的32次方,也就是大约2.2TB。# [/ ^$ G$ O7 G7 W

3 C7 M* w0 q) D$ R  F你也许会蔑视他们的“短视”,但在三十年前的人们看来,2.2TB几乎就是个遥不可及的天文数字,要知道当时最大的民用硬盘也不过5MB,而价格超过1500美元。
) W' C5 A6 z' P- \" A3 b
1 r( t9 {! p5 W8 R4 V其实刚刚进入九十年代的时候,人们就已经意识到了2.2TB容量限制问题,为此多家公司联合制定了一种弹性的分区机制,这就是GUID分区表,简称GPT,并将其做为UEFI(统一可扩展固件界面)规范的一部分。GPT支持最多64-bit信息,理论最大容量为9.4ZB,相当于9400000000TB。又是一个“天文数字”,不过说不定哪天就会成为第二个“2.2TB”。+ f6 x- W8 `5 h( Z* N

$ N9 `' x/ w8 ^2 ?( FWindows Vista 64位开始,微软就支持从GPT分区硬盘启动系统,但要求主板固件必须是UEFI,而不能是传统BIOS。( q$ x3 W) k8 a0 X6 o

- A/ A" ]8 c* u& ePC里的固件:BIOS、UEFI
. ~! _, T2 b% {0 m" |- g5 E: l* Y" `6 G3 R' u# E7 E
BIOS的意思就代表了其用途:基本输入输出系统。三十年前PC发明的时候它就出现了,但时至今日基本都还是老样子。UEFI就是用来取代BIOS的,但长时间都未能投入实用,直到最新的Intel、AMD平台上才开始普及。
8 x6 s. v! a( \5 L+ K: V: v
0 Q2 y# \; t- x3 I% h8 s9 [# QUEFI从设计之初就考虑了对GUID分区表合超大容量硬盘的支持,比之那些通过BIOS绕道而行的方法可靠得多。Windows 8开始,微软将会全面完善对UEFI的支持,借助UEFI固件、GTP分区表、LBA寻址方法共同管理超大硬盘。6 S2 \/ ~: I  v6 K8 @

- A/ Z8 l3 v+ c6 e下边就是在一块3TB硬盘上通过上述方法安装、启动操作系统的样子。
$ [/ Z: i! {" h
9 X  O& ~& f' C2 Q6 s+ B4 ~& rhttp://img.cnbeta.com/newsimg/111201/1622141908009106.png- n9 v) I8 w) |
8 A# q- g" w$ A* D) {0 U5 z. P
4KB扇区格式4 T; Q! }3 t$ Y0 z
+ q) h5 [5 k& r- q
所有硬盘都内建了某种形式的错误纠正信息和逻辑,以便在读取磁盘碟片的时候自动处理信噪比(SNR)。随着硬盘容量的增大,数据存储位越靠越近,SNR随之降低,硬盘的每个扇区就都不得不存储更多的ECC(错误校验码),以弥补读取错误,512字节的狭窄扇区空间慢慢就不够用了。
" Q  B- ~4 E6 t2 e/ ?- w( @
6 ?+ K5 d4 N# h, R/ h9 _于是,硬盘厂商将扇区容量扩大到了4KB,称之为“高级格式”(AF),并使用了新的ECC编码机制,可以更高效地纠正错误,所占存储空间也更少,等同于扩大了可用容量。目前,西数、希捷等硬盘厂商都逐渐普及了4KB扇区格式。; m+ O7 h4 J* V7 x/ `  j

. P) {) @+ F' F1 L4 Y扇区容量增大到4KB,数据的更新也必须按照这个尺寸来,所以为了实现更小数据块的逻辑寻址,硬盘必须做一些额外的工作。 ; Q& m  p/ L1 k4 ]8 [+ ?

; u" _3 f, R+ o% V  a微软畅谈Windows 8支持大容量硬盘、4KB扇区4 |1 F, D' `3 z: j6 {) _3 F
) }1 @& P6 d# E7 A- d; v
如上图,一个4KB物理扇区仍然可以划分成512字节逻辑扇区进行逻辑寻址。为了写入单独一个512字节的逻辑扇区,硬盘不能简单地把磁头挪到 4KB物理扇区上就写入,而是需要先把整个物理扇区中的数据读取到缓存中,在那里修改相应的512字节逻辑扇区,然后再整体写回去,覆盖旧扇区。这叫做“读取-修改-写入”(Read-Modify-Write)。
. z& k+ j# O# c  T1 _& }; X' y- m8 b1 F  i0 ]& P
有这种中间转换层的硬盘叫做“4K with 512-byte emulation”,缩写为512e,而没有的叫做“4K Native”,即一个是模拟的,一个是原生的。
& p8 d* x0 `1 d9 `* Y: ?5 i& l) k
读取-修改-写入可能会在面临大容量非一致性数据的时候影响实际性能,因为Windows必须确保应用程序能够提取整个4KB物理扇区,应用程序则需要确保I/O的一致性以报告物理扇区尺寸。/ j+ a- r( G/ m
: L+ j, y; P$ d4 M. [" [
吸取了之前版本在高级格式上的经验教训之后,Windows 8将其做为了关键的设计点,将成为第一个完整支持512e、4K Native两种格式的操作系统,主要包括:, A( T& x: x8 Y  o
) h! A- Y4 q7 }" w9 m
- 增强现有API、引入新的API,方便应用程序更好地查询硬盘的物理扇区尺寸;
$ ~. U) L1 N7 h6 z
# q# a/ M& w/ c: s; ]- 增强NTFS文件系统的大容量扇区识别,包括在执行扩展写入的时候确保合适的后续扇区(写入文件末尾的时候);
. A- v' K) {* k/ B/ ]; u* E- }
9 A1 h* b/ s1 ^& [6 T- Hyper-V虚拟化技术的新文件格式VHDx同样可以识别大容量扇区,完整支持两种格式;
/ t9 Q9 j  M+ i9 }
0 _9 Z; A  O# i. c- 增强Windows启动代码,保证在4K Native原生硬盘上正确启动。' i# k5 f( l4 a6 H
$ K1 i& U3 I6 c4 `6 ~6 i, I
还有更多工作将在Windows 8里默默进行。
: s8 O7 B+ N+ N7 d
Jgwy.Com - Free Web Hosting Guide & Directory In China since 2001! Jgwy.Net-Jglt.Net
您需要登录后才可以回帖 登录 | 注册

本版积分规则

美国原生IP服务器推荐|Archiver|手机版|小黑屋|金光论坛

GMT+8, 2025 年 1 月 23 日 09:27 , Processed in 0.026899 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表