‎Windows 8 Build 7973.0.fbl_core2_sid_data.110330-1700

来自 WinStory Wiki
跳转到导航 跳转到搜索
7973.0.fbl_core2_sid_data.110330-1700
Windows 8 的版本
操作系统系列Windows NT 系列
NT 版本Windows NT 6.2
内部版本号7973
修订版本号0
体系结构x86、x64
内部版本实验室fbl_core2_sid_data
编译日期2011 年 3 月 30 日
有效期
时间炸弹2011 年 7 月 1 日 (+93 天)
关于对话框

Windows 8 Build 7973.fbl_core2_sid_data 是 Windows 8 的 Milestone 3 版本。此版本的 x64 checked/debug 编译版本于 2015 年 9 月 19 日上传至 BetaArchive,[1]而其 x86 free/retail 编译版本则于 2022 年 6 月 5 日上传。

SKU 版本和密钥

版本 / SKU 名称 密钥
Starter [a] 7Q28W-FT9PC-CMMYT-WHMY2-89M6G
Home Basic YGFVB-QTFXQ-3H233-PTWTJ-YRYRV
Home Premium RHPQ2-RMFJH-74XYM-BH4JX-XM76F
Professional HYF8J-CVRMY-CM74G-RPHKF-PW487
Ultimate D4F6K-QK3RD-TMVMJ-BBMRX-3MBMV

Redpill

Metro 用户界面在视觉上与此版本的 fbl_core1_kernel_npcfbl_dnt3_wireless 编译版本相同。然而,MS Help 应用未包含在内。

全新安装体验

Metro OOBE 有重大更新:

  • 鱼形背景被中间有聚光灯的单一颜色取代。
  • Express settings(快速设置)首次以Recommended settings(推荐设置)的形式亮相。
  • 优化了选项和按钮,以更好地符合 Metro 设计。
  • 这是首次使用新的加载旋转图标,可以在 OOBE 结束时看到。

Bug

高级向量扩展(Advanced Vector Extensions,AVX)CPU bug

由于一个 bug,在某些使用高级向量扩展(Advanced Vector Extensions,AVX)指令集的 CPU 上,此版本的 x86 编译将无法启动,此 bug 会导致在启动屏幕首次显示后 CPU 立即发生三重故障。条目接下来讨论了一个解决方法。

Aero

在使用 Windows AeroAero Lite 主题时,只有窗口框架的顶部部分是模糊的,侧边框仍保持透明。

编译器

这些说明对于 x64 编译不是必须的,因此编译可以在不采用这些变通方法的情况下进行。

这是使用新编译器生成的首批版本之一。然而,当时围绕它的问题导致此版本在某些硬件上无法启动,引导加载程序在现代 x86 CPU(特别是包括 AVX 指令集的英特尔处理器和部分 AMD CPU)上无法正常工作。因此,会发生 CPU 三重故障,导致在虚拟机管理程序上崩溃或在真实硬件上重启。

修补 winload.exe 以在支持 AVX 的英特尔处理器上运行

为了在配备支持 AVX 的英特尔处理器的机器上正确启用 SSE 指令,必须开启控制寄存器 4(CR4)中的第 9 位。以下代码被执行,并位于 winload.exeA552 偏移处:

mov     eax, cr4        ; 0f20e0
or      eax, 20h        ; 83c820        -- 开启第 5 位,PAE(Physical Address Extension,物理地址扩展)
mov     cr4, eax        ; 0f22e0        -- 存储到 CR4
mov     eax, cr0        ; 0f20c0
or      eax, 80000000h  ; 0d00000080    -- 启用分页
mov     cr0, eax        ; 0f22c0

默认情况下,CR0 中设置的位包括:受保护模式(PE)(0x00000001)、协处理器监控(MP)(0x00000002)和扩展类型(ET)(0x00000010),而 CR4 中最初没有任何位被设置,因此需要开启第 9 SSE 位(即 OR 和 0x600),但由于这段代码的限制,需要进行重写,可以改为以下方式:

mov     eax,620h        ; b820060000
mov     cr4,eax         ; 0f22e0
mov     eax,80000013h   ; b813000080
mov     cr0,eax         ; 0f22c0
nop                     ; 90
nop                     ; 90
nop                     ; 90
nop                     ; 90

需要说明的是,对 winload.exe 进行这些修补更改将使完整性检查失效,因此需要启用测试模式(通过在 BCD 中将 NoIntegrityChecks 设置为开启)才能使用修补后的 winload.exe 启动,同时还需要修改 %systemroot%\System32%systemroot%\System32\Boo 中此文件的所有权,以防无法替换文件。

兼容性

VMware Workstation

英特尔 SSE 漏洞可以通过将兼容性级别设置为 7.x 或更低版本来解决,且必须将以下代码块添加到 VMX(虚拟机配置)文件中,以允许此版本在现代英特尔 CPU 上启动:

cpuid.0.ebx = "0110:1000:0111:0100:0111:0101:0100:0001"
cpuid.0.ecx = "0100:0100:0100:1101:0100:0001:0110:0011"
cpuid.0.edx = "0110:1001:0111:0100:0110:1110:0110:0101"
cpuid.1.eax = "0000:0000:0000:0001:0000:0110:0111:0001"

如果主机使用的是 AMD 处理器,上述配置步骤大多不需要,仅需更改兼容性版本即可。

图库

  1. 仅在 x86 编译中可用

引用资料