查看: 28747|回复: 31

[GT] 【系列教程】微星GT60 Win8+uefi+SSD 极速的开机体验 【解决所有BUG】

[复制链接]

该用户从未签到

发表于 2012-11-28 12:57 | 显示全部楼层 |阅读模式
本帖最后由 火日攻天 于 2013-3-13 15:01 编辑

注意事项

Ø 本文所说的机型为GT60
Ø 16F3准系统理论上也可以同样操作
Ø GT70请下载GT70对应的BIOS
Ø 刷BIOS有风险,如出意外作者不负责,切记谨慎
Ø 硬盘需要由MBR转化为GPT,整个硬盘的数据需要备份,如果有两块硬盘只需备份主硬盘
Ø 只支持64位系统,目前仅试验win8,win7理论上是可以的,不过请自行尝试。
Ø 目前测试后已经无任何bug,唯一的缺点是bios无法刷回win7的bios,以后升级只能刷win8的bios,而win8的bios目前无解锁版本,所以希望通过bios超频的同学一定要谨慎。

预备知识
(以下内容来自互联网)

UEFI
  可扩展固件接口(ExtensibleFirmware Interface,EFI)是 Intel 为全新类型的 PC 固件的体系结构、接口和服务提出的建议标准。其UEFI中图形化的硬件设置界面主要目的是为了提供一组在 OS 加载之前(启动前)在所有平台上一致的、正确指定的启动服务,被看做是有近20多年历史的PC BIOS的继任者。
  由于电脑教育普及,很多人都知道BIOS就是Basic Input/Output System,翻成中文是“基本输入/输出系统”,是一种所谓的“固件”,负责在开机时做硬件启动和检测等工作,并且担任操作系统控制硬件时的中介角色。
  然而,那些都是过去DOS 时代的事情,自从Windows NT出现,Linux 开始崭露头角后,这些操作系统已将过去需要通过BIOS完成的硬件控制程序放在操作系统中完成,不再需要调用BIOS功能。一般来说,当今所谓的“电脑高手”,多半是利用BIOS来对硬件性能做些超频调校,除了专业人士外,鲜有人再利用 BIOS 进行底层工作。
  因为硬件发展迅速,传统式(Legacy)BIOS 成为进步的包袱,现在已发展出最新的EFI(Extensible FirmwareInterface)可扩展固件接口,以现在传统 BIOS 的观点来说,未来将是一个“没有特定 BIOS”的电脑时代。
  UEFI是由EFI1.10为基础发展起来的,它的所有者已不再是Intel,而是一个称作Unified EFIForm的国际组织,贡献者有Intel,Microsoft,AMI,等几个大厂,属于open source,目前版本为2.1。与legacy BIOS 相比,最大的几个区别在于:
  1. 编码99%都是由C语言完成;
  2. 一改之前的中断、硬件端口操作的方法,而采用了Driver/protocol的新方式;
  3. 将不支持X86实模式,而直接采用Flat mode(也就是不能用DOS了,现在有些 EFI 或 UEFI 能用是因为做了兼容,但实际上这部分不属于UEFI的定义了);
  4. 输出也不再是单纯的二进制code,改为Removable Binary Drivers;
  5. OS启动不再是调用Int19,而是直接利用protocol/device Path;
  6. 对于第三方的开发,前者基本上做不到,除非参与BIOS的设计,但是还要受到ROM的大小限制,而后者就便利多了。
  7.弥补BIOS对新硬件的支持不足的毛病。UEFI将是近3年的趋势,到时候对于PC的利用以及维护都将步入一个新的时代。

传统 BIOS 开机流程
  从你按下主机机壳上的电源键,到进入作业系统的期间,储存于主机板上那颗 EEPROM(电气可抹除暨可程式化唯读记忆体)里的 BIOS 便会开始执行以下的工作:
  1. 初始化:当电脑打开,CPU 会自行重置为初始状态,準备运作。BIOS boot block(基本 输出输入系统开机区块)初始化阶段启动,因为此时系统记忆体中是空的,没有内容可以执行,所以厂商让 CPU 去寻找系统 BIOS ROM 中的 reset vector(重置 向量):用一个固定的位置来启动所谓的 BIOS boot program 开机程式。 一般来说程式会在记忆体的 FFFF0h 位址,也就是在 UMA(上层记忆区域)靠结 尾的地方。为避免 ROM 大小改变造成相容性的问题,所以一般会选择放这里。它 的内容只有一个 jump 指令,进一步跳到真正的 BIOS 启动程序。当然了,各家 IBV (independent BIOS vender;独立 BIOS 供应商)可以把程式放在不同的位置,只要透过 jump 来指定就可以了。在这段期间,系统的 CPU、晶片组、Super I/O 和 USB 只有部分初始化,仅获取足够资料来应付万一 BIOS 开机失败,可以利用软碟(由 Super I/O 控管)甚至 是光碟(由晶片组的IDE/SATA)等储存媒体来救援 BIOS 的 boot block。
  2. POST(Power On Self Test;开机自我检测):然后 BIOS 开始施行 Power-On Self Test(POST;开机自我检测),在过程中检 查电脑各项组件及其设定, 像是: 中央处理器、 主记忆体、 键盘、 滑鼠等等状态。 接着便寻找被内建在 BIOS 内部的显示卡程序并执行。 它通常被放在记忆体C0000h 的位置,作用是显示卡的初始化,而大部分的显示 卡都会在显示器上显示其相关讯息。这就是为何各位在开机的时候,首先会在显 示器的画面左上角出现有关显示卡讯息的原因。再下来就是让 BIOS 寻找其他装置的 ROM(唯读记忆体),看看这些设备中哪些 还有个别的 BIOS。如果这时有找到任何其它装置的 BIOS,它们也会被执行。 下一步 BIOS 会显示启动画面,并开始更深入的检测,包含我们平常可以在萤幕 上看到的记忆体容量检测。 如果这时候遇到任何错误,就会在画面上显示错误讯 息。
  3. 记录电脑系统的设定值:到这里还没有结束,再来 BIOS 会根据自己的“系统资源表”,来对系统进行进 一步的确认, 看看你的电脑究竟安装了那些系统资源或设备。有些电脑会逐步显示这些被侦测到的设备。例如 BIOS 支援随插即用,那它将会侦测和配置随插即 用装置,并显示由 BIOS侦测到的随插即用设备。 在这些检测结束后,BIOS会打出一个侦测总结表于画面上。而这个总结表在部 分 IBV 的设定中是可以让使用者开启或关闭的。 当然也有些 IBV 为加速开机把这 一步直接隐藏省略。Tips:BIOS boot block 在快闪唯读记忆体内, 通常会分成两个区块, 一个区块存放一般的BIOS 程式码, 即所谓的 codeblock(程式码区块);另一个区块则是存放用来开机(或急救) 的程式码,就是所谓的 boot block(开机区块)。当电源打开时,主机板会先 从 boot block 执行,它会立即检查 code block 的程式码是否正确,如果正确, 就会转到 codeblock 继续执行下去。而所谓的 BIOSrecovery(BIOS 回复)就 是利用 bootblock 回写动作来进行 BIOS 更新失败时的救援。
  4. 提供常驻程式:提供作业系统或应用程式呼叫的中断向量,如INT 10h(VGA 图形及文字输出中 断)等。
  5. 载入作业系统:到这里是系统检测的部分,接下来 BIOS 便开始寻找开机装置,使用者可以透过 在 BIOS 的设定来决定搜寻顺序,目前常见的开机设备至少包含 FDD、HDD 以及光 碟机和 USB 开机装置等多项。 找到开机装置后,BIOS 将会搜寻开机讯息以进行作业系统的开机过程。如果是 找到了一个灌好 OS 的硬碟,它将会寻找位在硬碟第 0 面,第 0 轨,第 1 磁区里 的 Master Boot Record(主要开机磁区)。如果它找到的是 FDD,也会读取软碟 的第 1 磁区。 再把读取到的资料放在记忆体7C00h 的位置, 跳到那里并且执行它。 自此才开始进入 OS 启动阶段。

UEFI BIOS 系统的开机流程
  同样是进行电脑系统的开机,由于 UEFIBIOS 是遵循 UEFI 论坛的规范定义下开 发的,所以 UEFI 的开机流程会像下图一般:
  1. SEC 阶段:SEC(安全性)阶段其主要的特色为“cache as RAM”,即处理器的快取当成记 忆体。由于 C 语言需要使用堆叠,在这个阶段的系统记忆体尚未被初始化,在没有记忆体可用的情况下, 便把处理器的快取当成记忆体来使用,在主记忆体被初 始化之前来进行预先验证 CPU/晶片组及主机板。 因为这时侯没有快取, 会导致处理器的效能变得较差,所以在记忆体初始化完毕 之前,SEC 和 PEI 阶段的程式码越简短,越能减少这个副作用。
  2. PEI 阶段:和传统 BIOS 的初始化阶段类似,PEI(EFI 前初始化)阶段是用以唤醒 CPU 及记 忆体初始化。这时候只起始了一小部分的记忆体。同时,晶片组和主机板也开始 初始化。接下来的服务程式会确定 CPU 晶片组被正确的初始化,在此时,EFI 驱 动程式派送器将载入 EFI 驱动程式记忆体, 进入了起始所有记忆体的DXE 阶段 (驱 动程式执行环境)。
  3. DXE 阶段:DXE 的主要功能在于沟通 EFI驱动程式及硬体。也就是说此阶段所有的记忆体、 CPU(在此是指实体两个或以上的非核心数目,也就是双 CPU 插槽处理器甚至是 四 CPU 插槽处理器)、PCI、USB、SATA 和 Shell 都会被初始化。
  4. BDS 阶段:在 BDS(开机设备选择)这个阶段,使用者就可以自开机管理者程式页面,选择 要从哪个侦测到的开机设备来启动。
  5. TSL 阶段:然后进入 TSL(短暂系统载入)阶段,由作业系统接手开机。除此之外,也可以 在 BDS 阶段选择 UEFI Shell, 让系统进入简单的命令列,进行基本诊断和维护。

传统 BIOS 哪里不好?
  在继续探讨何谓 UEFI BIOS 之前,先来看看传统 BIOS 有哪些问题,让 Intel 决心带头推出 UEFI BIOS。
  1. 过时的 16 位元模式在 x86 系列 CPU 进入 32 位元的时代,为了相容性考量,当时最新的80386 CPU 保留了 16 位元的执行方式,即真实模式(real mode)。在后来多次的 CPU 改朝 换代中都保留了这种执行方式,甚至在含有EM64T 的 Xeon 系列 CPU 中,供电到 CPU 启动时仍然会切换到 16 位元的真实模式下执行。 也就是说,虽然各大BIOS 厂商为了配合潮流演进,将许多新功能新元素添加到 产品中,但 BIOS 在本质上没有任何改变。迫使 Intel 在开发更新的 CPU 时,都 必须加进会使效能大大降低的相容模式。
  2. 只有 1MB 定址空间各位读者如果有注意传统 BIOS 开机,在 POST 完毕后萤幕上打出的系统摘要表,会发现记忆体栏位标示着“Base Memory=640KB”。加上前一篇提到的 384KB UMA (这里的记忆体不会列入 Base Memory),就是所谓 1MB 可定址记忆体空间。会造成这项限制,主要还是真实模式的副作用。16 位元的 CPU,其定址能力为 20 条定址线所能处理的 2^20 位元组(Bytes),也就是 1024 千位元组(KB)。 换句话说,在进入 OS 之前的开机阶段,即使安装了高达 4GB 的记忆体,绝大部 分都无法使用。
  3. 组合语言难维护假设某天你买了一张高阶工作站主机板,再装上一张 SCSI 或 SAS 的磁碟阵列卡,竟然发现安装后你的主机板开机开不下去,然后显示“Not enough space to copy PCI option ROM”或“Option ROM memory space exhausted”警告字串。然后 本来你那雀跃快乐的心情消失了,取而代之的是“归 LP 火”熊熊燃烧着。 当你打电话给阵列卡商,电话那头的死公务员声音说着:“你要不要问问主机板 厂有没有新的 BIOS?”。 好不容易找上主机板厂商客服问:“你们有没有办法解决?”然后,你和主机板 BIOS 工程师之间的攻防就此展开。 对板卡厂的 BIOS 工程师而言, 除非刚好有下单下很大的客户遇到类似相关问题, 否则很有可能就是不了了之。 你只好趁购买七天内退掉那张阵列卡,不然就是再 找一张可以正常搭配的主机板。 由于传统 BIOS 是用组合语言编写的,而软体界早就已经是 C/C++高阶语言甚至 是.NET 满天飞,为了相对难找的人才(组合语言高手相对少,要 BIOS 真正写得 好的更是少数)来减缓新产品上市的速度,不管是消费者或厂商都无法接受。此时 UEFI BIOS 标準化和模组化的特征, 便可加速产品推出和减少debug 的时间。 另外 C 语言写的 UEFI BIOS 体积也会变大, 连带使储存 BIOS 的 EEPROM 需要扩增。 别忘了,这也是 Intel 的势力范围,如果 EFI BIOS 推广成功,板卡厂就得多采 购一颗晶片。
  ▲ 由于传统 BIOS 的先天局限,有时候磁碟阵列卡就是装不上去。
  4. 十年不变的程式码上述三大问题是以开发厂商的角度来观察。其他隐而不现的部分,则包含了功能的局限性和对使用者不够友善的操作介面。对照现今的视窗介面作业系统,传统 BIOS 以文字介面为主且充满着火星文,加上除了单纯的开机,作为仲介硬体初 始化和作业系统的功能外实在阳春的可怜。在开发 Itanium CPU 之际, 业界大魔王 Intel 实在不想再受制于这些顾虑。 试想, 既然这是一个新生的 CPU 架构, 那系统韧体和作业系统之间的介面就顺便一起重 新定义。 并且这一次,Intel 为了让以后各种新的规格和技术可以快速导入,严格定义这 个传统 BIOS 接班人必须具有扩展弹性,而且采取标準化的韧体介面规范,以避 免发生传统 BIOS 的 IBV 程式码更新太被动的问题。 笔者不是开玩笑,业界之前盛传一句话,如果 Award BIOS 当时(IntelPentium 处理器时代)没有华硕,那肯定没有后来功能齐全的 BIOS 程式编码。传统 BIOS 静态连结,缺乏远见且叠床架屋,而几乎全基于经验和约定的见招拆招。所以才 有 2000 年开发出来所谓的 EFI(Extensible Firmware Interface;可扩展韧体 介面)技术作为工业标準规格,定义了一个驱动介面,用以沟通硬体/韧体和作业系统。

UEFI 的版本发展
  最初制定的 EFI 版本 2000 年 12 月的 1.02 版。在2002年的12月又释出了加入 EFI 驱动程式模型的 1.10 版。 2005 年, 于 Intel 将此规格提供给负责 UEFI 开发 和推广的 UEFI 论坛。为了反映这点,EFI也被更名为 UEFI。在大部分的文件资料中,EFI 和 UEFI 讲的是一样的东西。UEFI 论坛在 2007 年 1 月释出 2.1 版的规范。 目前最新公开的版本就是2009 年 5 月发佈的 2.3 版。概括而论,凡依照 UEFI 论坛规范,使用 C 语言写作的 BIOS 即为 UEFI BIOS。 UEFI 论坛成员类别 IBV(独立 BIOS 厂商) AMI、Insyde、Phoenix IHV(独立硬体厂商) ISV(独立软体厂商) AMD、Apple、Dell、HP、 IBM、Intel、联想 微软UEFI BIOS 哪里好?UEFI 是藉由 UEFI 论坛制定的严谨规范来达成标準化,并用模组化之 C 语言方式 的参数堆叠传递, 藉由动态连结形式所建构出来的系统,相较于使用组合语言的 传统 BIOS 更易于实作,在容错和错误更正的表现上更加优良,更好开发。UEFI 是以 32 或 64 位元 CPU 保护模式执行(也称为 Flat Mode),突破传统 16 位元 代码的定址能力,可达到 CPU 的最大定址空间。
  1. 定址空间更弹性UEFI BIOS 利用载入 EFI driver 的形式,来进行硬体的辨识/控制及系统资源 掌控。 传统 BIOS 是以真实模式中断向量的方式增加硬体功能。它要将一段类似于驱动 程式的 16 位元代码,放置在记忆体0x000C0000 至 0x000DFFFF 之间。这段记忆 体空间有限(128KB),因此,当必须放置的 option ROM 超过 128KB 时,传统 BIOS 便无能为力。 很多时候传统 BIOS 的工程师为了解决这类问题, 像刚刚提到的介面卡 BIOS 容量 过大, 便要想办法利用可能的排列组合硬挤出空间来放驱动代码。而重组过程有时不小心造成一些副作用,例如才刚解决的 bug,重组后又再发生!也就是说, UEFI BIOS 可以更有系统的分配储存空间,避免使用强制定址。
  2. 什么系统都能用另外, 传统 BIOS 的硬体服务程式都是以 16 位元代码的形式存在,在增强模式下 执行的作业系统想存取这些服务会有困难。因此 BIOS 提供的服务在现实中只能 提供给 MS-DOS 之类的系统用。 相对的, UEFI 系统下的驱动并不是可以直接在 CPU 执行的代码, 而是用 EBC (EFI Byte Code)这种专用于 EFI driver的虚拟机器指令,该指令必须在 UEFI 的 DXE 阶段被解压缩后翻译执行。如此便有更佳的向下相容性,因为 EFI driver 是弹性的驱动程式模组架构,可 不断的扩充驱动程式及介面, 不用重新编写,所以就无需考虑因系统升级所衍生 的相容性因素。
  3. 开发维护更容易加上 EFI driver 开发简单,所有的 PC 零组件厂商都可以参与,就像现代作业系统的开发模式,这样的模式曾使 Windows 系统短短几年就变得无比强大。有了 EFI driver,也可以让显示卡在开机阶段就载入某种程度的功能,进而可以把传 统文字介面为主的 BIOS 转成图形介面。
  4. 精简系统用途大最后还有 EFI Shell, 这是个精简的作业系统,可以让使用者进行BIOS 的更新、 系统诊断、安装特定软体。有了 UEFI BIOS 甚至可以播放 CD 和 DVD 而不需完全 载入 OS,EFI driver 可以被载入或卸载,连 TCP/IP 核心程式都可以使用。基于 EFI 的 driver model 可使 UEFI 系统接触到所有的硬体功能,在进入作业系统之前浏览网站不再是天方夜谭,甚至实作起来也非常简单。总之,对使用者而言, 多了一个方便的环境以及华丽的图形介面,是最明显的好处。传统 BIOS vs. UEFI BIOS 重点差异 BIOS 种类 程式语言 资源控制 处理器运行环境 扩充方式 第三方 IHV 和 ISV 支援性 图形化能力 传统 BIOS 组合语言 UEFI BIOS C 语言中断向量 写死的记忆体存取 驱动程式/协定 写死的输出/输入存取X86 16 位元 接合中断向量 较差 较差 CPU 保护模式 载入驱动程式 较佳且可以支援多平台 较佳有内建简化的作业系统前环境 无

有谁在用 UEFI?
  UEFI 支援必须藉由软硬体的相互合作来达成,我们来看看目前市面上流通的产品中,哪些已经采用了 UEFI。

支援 UEFI 的硬体
  1. 2006 年,苹果电脑推出第一台使用 Intel 处理器架构的麦金塔电脑。从此开 始用 EFI/UEFI framework,而非以往搭载 IBM PowerPC 处理器的麦金塔电脑用 的、发源于 SunMicrosystems(昇阳电脑公司)的 OpenFirmware。
  ▲ 目前新版的 Mac OSX 都已经支援 UEFI。
  2. Intel 自家的行动型、桌上型和伺服器电脑主机板自 2006 年起开始全面转换 为 EFI/UEFI BIOS。例如从 945 系列晶片组开始,Intel 的主机板就已经使用了 该 framework。
  3. 此外,2008 年开始,许多 64 位元电脑系统也正式支援 EFI/UEFI BIOS。如 IBM 的 x3450 伺服器、微星科技具备 ClickBIOS 的主机板(包括下一篇介绍的EFINITY 主机板)、HP 笔记型电脑 EliteBook 系列和平板电脑、HP Compaq 笔记 型电脑较新的机种。
  ▲ 微软到了 WindowsServer 2008 才开始支援 UEFI。

支援 UEFI 的作业系统
  1. 早在 2000 年, Linux 作业系统便可以支援 EFI, 当时是 eliloEFIboot loader (开机载体),演化至今是 EFI 版本的 grub。
  2. 苹果电脑到了 Mac OS X 10.4(代号 Tiger)的 Intel 版便可以支援 EFI。
  3. 2002 年微软给 Itanium CPU 使用的 Windows2000 Advanced Server Limited Edition 及 DatacenterServer Limited Edition 版支援了 EFIv1.10 规范。后来的 WindowsServer 2003 for IA-64 版和 Windows XP64-bit 版本也支援 EFI。 至于 UEFI 的支援是从 Windows Server 2008 和 Vista SP1 的 64 位元版本开始, 包括 Windows 7 也只有 64 位元版完整支援 UEFI。
  ▲ Intel 自家的 D945PSN 主机板。


评分

参与人数 1本币 +10 收起 理由
dyf8320 + 10 原创内容

查看全部评分

该用户从未签到

 楼主| 发表于 2012-11-28 14:18 | 显示全部楼层
本帖最后由 火日攻天 于 2012-11-28 18:42 编辑

MBR和GPT区别
  MBR 和 GPT 的问题已经走到了非常现实的阶段-3T硬盘开始普及。MBR 由于对 3T 硬盘寻址无法支持,终于要开始被弃用了。但仅仅只是“开始”,我感觉至少10年之内 MBR 还不会消失。恐怕当GPT适应不了需求的时候,MBR才会消失。

一、MBR 的失误
  说“失误”牵强了一点。我们不能要求当年只有5M的硬盘就扣出2M来放寻址信息。计算机永远比你想象的要发展的快。
首先你要有一些基本的硬盘的MBR知识,如果你不熟悉,可以先在 wiki 看一看硬盘的基本结构。
在了解了磁道、柱面、扇区之后,再看下面的 MBR 结构就很了然了:
  基本MBR结构

偏移量(位置)
  (within sector)
  
  
长度
  (in bytes)
  

解释

十进制

  
十六进制
  

  
000 – 445

  
000 – 1BD
  
  
446
  
  
引导程序
  

  
446 – 509

  
1BE – 1FD
  
  
64
  
  
分区表
  

  
510 – 511

  
1FE – 1FF
  
  
2
  
  
引导记录
  


  MBR 永远占用了第一个扇区,通常为512bytes大小。在这512bytes中被MBR本身的程序用去了446bytes。于是,真正描述分区信息的就只有 64 bytes。而根据4个主分区的设计,每一个分区能用到的只有 16bytes. 那么!这16bytes是如何工作的?
16-byte分区表结构

Relative
  Offsets
  (within entry)
  
  
长度
(bytes)
  
内容
  
0
  
  
1
  
  
引导标记 (80h = active)
  
  
1 – 3
  
  
3
  
  
CHS  开始位置
  
  
4
  
  
1
  
  
分区类型描述
  
  
5 – 7
  
  
3
  
  
CHS  结束位置
  
  
8 – 11
  
  
4
  
  
启始扇区
  
  
12 – 15
  
  
4
  
  
分区大小 (扇区单位)
  
  表中,有2个“开始位置”,我们分开理解。
  硬盘的历史过程中,第一个遇到的问题就是 8G 瓶颈。这就是因为在 CHS 描述方式中,描述起点和终点均为3个 byte。我们假设是 FF FF FF ,所以是 16*16*16*16*16*16*512=8589934592 这就是 8G 瓶颈的由来了。
  但是今天CHS 方式几乎已经不用了。后面还有 4 个 bytes 的“启始” 是给 LPA 方式用的。他的极限就是 8589934592 * 256 =2199023255552 这就是 2T 的限制由来了。
在硬盘容量的历史中,有很多因素决定了它的限制。BIOS,ATA(IDE),文件系统。

二、GPT 的思路
  GPT (GUID Partition Table)属于 EFI 方案中的一部分。虽然很早就开始制定这个标准,但到今天,还是有很多系统不支持 GPT。首先,引用一张wikipedia上的结构图,来了解一下 GPT 的基本结构。
gpt.png


  GPT 为了兼容 MBR,LBA 0 依旧保留了MBR的结构。在GPT工作是,会优先读取 GPT (LBA1) 内容。如果没有 GPT 内容,则认为这是一块MBR磁盘。再从LBA 0 读取MBR。
  在硬盘末尾,GPT 备份了一份,这样当GPT出错时,可以快速的从硬盘末尾恢复。LBA -1 (负1) 表示倒数第一块 LBA。
从LBA 2 到 LBA 33 ,一共预留了 128 个分区表空间。 GPT 支持在一块硬盘上创建 128 个分区(真有这种需求?)。所以每一个分区可以使用 128 bytes 的空间。
  来看一看 LBA 1 的结构吧,有了 512bytes 的巨型空间,都用不掉了。
  
0
  
  
8字节
  
  
签名(”EFI PART”, 45 46 49 20 50 41 52  54)
  
  
8
  
  
4字节
  
  
修订(比如,1.0,值是 00 00 01 00)
  
  
12
  
  
4字节
  
  
分区表头的大小(单位是字节,通常是92字节,即 5C 00 00 00)
  
  
16
  
  
4字节
  
  
分区表头前3项(第0-15字节)的CRC32校验,如果值正在计算,则是 0
  
  
20
  
  
4字节
  
  
保留,必须是 0
  
  
24
  
  
8字节
  
  
当前LBA(这个分区表头的位置)
  
  
32
  
  
8字节
  
  
备份LBA(备份分区表头的位置)
  
  
40
  
  
8字节
  
  
第一个可用于分区的LBA(主分区表的最后一个LBA + 1)
  
  
48
  
  
8字节
  
  
最后一个可用于分区的LBA(备份分区表的最后一个LBA − 1)
  
  
56
  
  
16字节
  
  
硬盘GUID(在类UNIX系统中也叫UUID)
  
  
72
  
  
8字节
  
  
分区表项的起始LBA(对于主分区表来说,这个值是 LBA 2)
  
  
80
  
  
4字节
  
  
分区表的数量
  
  
84
  
  
4字节
  
  
一个分区表的大小(通常是128)
  
  
88
  
  
4字节
  
  
分区串行的CRC32校验
  
  
92
  
  
*
  
  
保留,剩余的字节必须是0(对于512字节LBA的硬盘即是420个字节)
  
  此表来源为 中文 Wikipedia, 稍微修改了两个字,便于理解。
  通过这张表,程序可以获知分区数量,第一个分区在哪个位置,以及GPT头是否正确(CRC32)。在这里着重解决的是分数数量问题,以及分区表的安全性问题。而分区的大小问题,则依赖了 GPT 的分区表:
  
0
  
  
16字节
  
  
分区类型GUID
  
  
16
  
  
16字节
  
  
分区GUID
  
  
32
  
  
8字节
  
  
起始LBA(小端序)
  
  
40
  
  
8字节
  
  
末尾LBA
  
  
48
  
  
8字节
  
  
属性标签(如:60表示“只读”)
  
  
56
  
  
72字节
  
  
分区名(可以包括36个UTF-16(小端序)字符)
  
  重点就在这里了,在描述分区位置的时候,使用了8个字节,其最大值为 FF FF FF FF FF FF FF FF 。那么,假设每一个LBA 为512 bytes。其能描述的大小为 8589934592 TB = 8 ZB 。关于这个数字我算下来的确是在 ZB 级别的。但是搜索到的文章说法不一:
突破2TB限制 3TB硬盘装操作系统实战 9.4ZB (GPT分区表采用8个字节即64bit来存储扇区数,因此它最大可支持264个扇区。)
关于windowsserver 2003最大支持硬盘容量的问题 18EB
  对于上面这些数字,18EB 恐怕是 LBA 数量,忘记乘 512 bytes 了。9.4ZB 暂时不知道是怎么来的。但这个数字暂且不做定论。因为微软的 FAQ也提到了,这只是理论值,谁知道下一个瓶颈在哪里呢。
Q. How big can a GPT disk be?
A. In theory, a GPT disk can be up to 2^64logical blocks in length. Logical blocks are commonly 512 bytes in size.
The maximum partition (and disk) size is afunction of the operating system version. Windows XP and the original releaseof Windows Server 2003 have a limit of 2TB per physical disk, including all partitions.For Windows Server 2003 SP1, Windows XP x64 edition, and later versions, themaximum raw partition of 18 exabytes can be supported. (Windows file systemscurrently are limited to 256 terabytes each.)


该用户从未签到

 楼主| 发表于 2012-11-28 14:28 | 显示全部楼层
本帖最后由 火日攻天 于 2012-11-30 13:19 编辑

操作步骤(补充中)

一、准备工作
       1、首先下载Win8镜像,刻录成光盘或者制作启动U盘。
       2、备份硬盘资料。

二、刷BIOS
       再次强调一点,刷BIOS有风险!!!一定要插上电源,刷BIOS时一定不要断电,不要拔电池!!!不然后果自负!
第一步:  准备工作
Description
First release
Version
50T
Type
BIOS
Release Date
2012-11-22
Download
File Size
2.72 MB
Note
SATA mode selection set to AHCI by Default.
For Win8 Systems use only.
Description
First release
Version
70T
Type
BIOS
Release Date
2012-11-22
Download
File Size
2.72 MB
Note
SATA mode selection set to RAID by Default.
For Win8 Systems use only.
E16F3IMS.50T.zip适合与非raid用户  E16F3IMS.70T.zip适合raid用户,不过附件里的东西不适合在DOS下刷的,我们需要改造一下,解压zip压缩包
图像 1.png
下载DOS刷BIOS的文件, DOSFlashBIOS.rar (58.56 KB, 下载次数: 241)

该用户从未签到

 楼主| 发表于 2012-11-28 14:28 | 显示全部楼层
本帖最后由 火日攻天 于 2013-3-13 15:05 编辑

以前存在的bug解决如果你是第一次看教程,可以直接忽略这部分,因为现在已经无bug了,下文仅对以前看本教程的存在bug的同学的提出解决方法。

按照前面的步骤,升级BIOS,升级EC,卸载S-bar,安装SCM即可

         
          win.rar (204.18 KB, 下载次数: 92)

该用户从未签到

 楼主| 发表于 2012-11-28 14:28 | 显示全部楼层
本帖最后由 火日攻天 于 2012-11-28 22:38 编辑

将来如何刷BIOS
http://www.msi.com/files/pdf/Win8_BIOS_Update_Step_by_Step_Guide.pdf

该用户从未签到

发表于 2012-11-28 15:01 来自手机 | 显示全部楼层
T^T火日大神!!!!你这也太专业了啊啊啊????膜拜啊啊啊!!!!T^T

该用户从未签到

发表于 2012-11-28 16:36 | 显示全部楼层
前排~~~

该用户从未签到

发表于 2012-11-28 17:03 | 显示全部楼层
占位学习
  • TA的每日心情
    慵懒
    2017-1-12 09:39
  • 发表于 2012-11-28 18:45 | 显示全部楼层
    我只知道GPT分区的后果是一切win7激活软件都无法使用,昨天听说新版的BIOS有BUG之后今天早上9点刚刚过立刻打电话给维修站,没让他们刷、、否则我的本本现在亮度也调节不了了
  • TA的每日心情
    难过
    2017-11-21 18:12
  • 发表于 2012-11-28 22:43 | 显示全部楼层
    目测我用不到GPT分区,五年之内应该是用不到的

    该用户从未签到

    发表于 2012-11-29 14:53 | 显示全部楼层
    好东西,谢谢分享

    该用户从未签到

    发表于 2012-11-29 21:05 | 显示全部楼层
    支持火日

    感谢分享!

    该用户从未签到

    发表于 2012-11-30 12:29 | 显示全部楼层
    火日攻天 发表于 2012-11-28 14:28
    将来如何刷BIOS
    http://www.msi.com/files/pdf/Win8_BIOS_Update_Step_by_Step_Guide.pdf

      尼玛,盗取我的成果啊,电池开机蓝屏还有调成高性能不蓝都是我发现的。修改BIOS方法也是学我的,还不著名引用,鄙视死你!!!!

    该用户从未签到

    发表于 2012-11-30 12:30 | 显示全部楼层
    火日攻天 发表于 2012-11-28 14:28
    将来如何刷BIOS
    http://www.msi.com/files/pdf/Win8_BIOS_Update_Step_by_Step_Guide.pdf

    你以为多粘贴点百度的东西哥就看不出来了,告诉你吧,现在不能调亮度的问题已经解决了,再次鄙视你!!!!

    该用户从未签到

     楼主| 发表于 2012-11-30 13:07 | 显示全部楼层
    本帖最后由 火日攻天 于 2012-11-30 18:53 编辑
    stargazer9264 发表于 2012-11-30 12:30
    你以为多粘贴点百度的东西哥就看不出来了,告诉你吧,现在不能调亮度的问题已经解决了,再次鄙视你!!! ...

    我还想鄙视你这种人呢 刷bios好像就你会似得,只要别人和你一样都是抄你的 你还会吃饭呢 全世界都是模仿你吃饭的是吧 电池开机蓝屏我们这个版区就有人发现了,好像就你能发现一样,怎么解决的我确实是网上看的 写帖子的时候确实不记得哪来的了 如果是你先发现的那我道歉我确实不知道出处是哪(不过现在发现出处也不是你) 不过你种自以为是的人我还是想说你几句,不要以为你会的别人就不会,别人都是抄你的

    该用户从未签到

     楼主| 发表于 2012-11-30 18:52 | 显示全部楼层
    stargazer9264 发表于 2012-11-30 12:29
    尼玛,盗取我的成果啊,电池开机蓝屏还有调成高性能不蓝都是我发现的。修改BIOS方法也是学我的,还不著 ...

    去了cbber才发现连调成高性能都和你没关系,刷个ec使的可以调节亮度还确实要感谢你啊 不过还是有bug还不能算完美啊

    该用户从未签到

    发表于 2012-11-30 21:04 | 显示全部楼层
    火日攻天 发表于 2012-11-30 18:52
    去了cbber才发现连调成高性能都和你没关系,刷个ec使的可以调节亮度还确实要感谢你啊 不过还是有bug还不能 ...

      版主同学,http://www.cbber.com/thread-44596-1-1.html
    这个帖子比你早了一个星期哦,懒得跟你争了。。。下次写个引用我就不说什么了,你自己的帖子不是也说被转载的时候要注明嘛

    该用户从未签到

     楼主| 发表于 2012-11-30 21:13 | 显示全部楼层
    本帖最后由 火日攻天 于 2012-11-30 21:18 编辑
    stargazer9264 发表于 2012-11-30 21:04
    版主同学,http://www.cbber.com/thread-44596-1-1.html
    这个帖子比你早了一个星期哦,懒得跟你争了。 ...

    我已经解释过了我没看你的文章除了那个刷ec的 咋没明白我的意思呢 就算你比我早一年写 我没看我也可以不注明是引用你的 难道我写一个教程还要查一下有谁比我先写的我还要注明是引用他的?你说是这个道理吧,刷ec部分我是引用了所以我注明了 一事说一事嘛

    该用户从未签到

     楼主| 发表于 2012-11-30 21:16 | 显示全部楼层
    stargazer9264 发表于 2012-11-30 21:04
    版主同学,http://www.cbber.com/thread-44596-1-1.html
    这个帖子比你早了一个星期哦,懒得跟你争了。 ...

    这事还用争论下去吗? 如果双方语气都好一点客气一点 一点误会不至于这样吧 都是为了别人操作方便 我有做错的地方你指正,这事到此为止你看怎么样

    该用户从未签到

    发表于 2012-12-1 17:07 | 显示全部楼层
    微星不是在说明文件里提供了EFI模式下刷BIOS的工具么,不需要用那个DOS下刷BIOS的工具吧。。。。
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    意见反馈|Archiver|手机版|小黑屋|本友会 ( 北京市公安局海淀分局网监中心备案编号:11010802020118  

    GMT+8, 2020-6-3 02:18 , Processed in 0.303154 second(s), 18 queries , Memcache On.

    Powered by Discuz! X3.2

    © 2001-2013 Comsenz Inc.

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