启动屏幕
启动屏幕通常由操作系统或其他软件显示,以直观地指示其初始加载过程,并提供系统已成功初始化的视觉确认。根据软件的不同,屏幕中可能包括版本信息、确定或不确定的进度指示器或状态消息。许多启动屏幕还包括加载软件的品牌、其开发人员和/或分销商的品牌。
Windows
16 位 Windows
在早期版本的 Windows 中,启动屏幕是一个与设备相关的独立模块,用于处理徽标绘制和动画。徽标模块存储在安装磁盘上的 .LGO
文件在安装过程中与设备无关的 WIN.CNF
组件组合在一起,形成 WIN.COM
启动器,允许 OEM 根据需要提供自己的徽标代码。第一个已知使用启动屏幕的版本是 Windows 1.0 Beta Release,它具有合并的 Microsoft 徽标和版本信息。在 Windows 1.04 之前,此屏幕在零售版本中几乎没有变化,当时 Microsoft 徽标已更新为 1987 徽标。
在 Windows 2.x 中,徽标位图和文本被分隔为单独的公共 .LGD
文件,它仍然与其他部分组合成 WIN.COM
。Windows 3.0 及更高版本的 16 位版本仍保留相同的系统,尽管启动屏幕本身已更改为存储为 RLE 压缩位图的图形静止图像。
Windows 9x
Windows 95 引入了一个新的启动屏幕,该屏幕在 VGA 256 色模式下运行,并在运行时更改调色板末尾的保留条目以显示动画。在大多数版本中,主引导徽标以压缩形式包含在 IO.SYS
中,尽管可以通过将自定义徽标保存为引导驱动器根目录中的 LOGO.SYS
来使用自定义徽标。同样的方法也可用于“关机”(LOGOW.SYS
)和“安全关机”(LOGOS.SYS
)屏幕。在所有情况下,徽标文件的大小必须为 320×400 像素,并且应另存为 RLE 压缩位图。
早期的版本使用了让人想起“Flying Windows”屏幕保护程序的动画,Windows 徽标以随机颜色随机点亮整个屏幕。这是通过徽标位图实现的,该位图包含许多 Windows 标志,每个标志都使用与保留区域不同的颜色。通常,保留的条目将设置为黑色,引导动画代码将它们设置为颜色以实现效果。
从 Build 337 开始,动画已更改为仅旋转保留的调色板条目,该条目用于后续 beta 版本中的滚动箭头效果,以及最终版本中的旋转渐变条,以及用于 Windows 95 和早期 Windows 98 版本中第一个启动屏幕的呼吸 Windows 徽标动画。
由于对实模式 MS-DOS 子系统进行了更改,Windows Me 在 Beta 2 之前完全没有启动屏幕。
Windows NT
Build 196 是唯一不使用传统启动过程的可用版本,在启动时在浅灰色背景上显示带有深色文本的文本屏幕。与任何后来的版本不同,这个引导屏幕似乎主要由引导加载程序处理,它在加载内核二进制文件时在屏幕上打印其版本信息。然后,当内核开始执行时,屏幕将被清除,并被一行充满等号的行所取代。还可以修补引导加载程序,以在引导时显示有关加载的内核映像的详细信息。
在 1991 年 10 月的版本中,引导屏幕在内核本身中重新实现。作为此更改的一部分,配色方案已更改为蓝色背景上的白色文本,这与新引入的蓝屏死机相匹配,并被选中以匹配 MIPS 固件显示以及许多 NT 开发人员使用的 SlickEdit 文本编辑器的默认配色方案。启动屏幕现在显示操作系统版本和内存量信息,并且还兼作早期用户模式进程的控制台。在 IBM 兼容的系统上,引导屏幕最初使用 25 行文本模式,尽管后来从 Build 475 开始更改为 50 行。Windows NT 3.5 后来更新了启动屏幕,以始终显示处理器数,因为以前仅在使用多处理器内核时显示。
最后一个已知支持操作文本模式显示的版本是 Windows 2000 Build 1814.1,尽管自引入 bootvid.dll
驱动程序以来,它已被默认禁用,并且必须使用 /NOGUIBOOT
内核开关启用;在后续版本中,交换机将完全禁用启动屏幕,仅显示光标闪烁的空白屏幕。即使在 Windows 2000 引入图形启动屏幕之后,启动时文本控制台本身仍被保留,尽管在图形模式下重新实现,并且每当早期启动过程想要将某些内容打印到屏幕上时都会使用。在 Windows 7 及更早版本中,/SOS
内核开关完全禁用启动动画,并将版本和系统信息打印到控制台,类似于 Windows NT 4.0。
Windows 2000 到 Vista
Build 1796 是首个包含用于启动时图形的 bootvid.dll
驱动程序的已知版本。这允许实现一个新的图形启动屏幕,该屏幕以 640×480 分辨率和 16 种颜色运行,并具有操作系统徽标以及渐变条和显示启动过程进度的确定进度条。后来的版本通过为渐变栏引入旋转动画、为启动时文本控制台添加单独的设计或为专业版和服务器版使用不同的图形来完善启动过程。最初,启动屏幕呈现在一个较小的中心窗口中,周围环绕着颜色填充,尽管后来它被重新设计以覆盖整个屏幕。
Windows Codename Neptune 中的启动加载程序似乎已使用代码进行了扩展,以便在从休眠状态恢复计算机或启用快速启动功能时呈现启动屏幕,从而替换旧版本和新版本显示的文本模式进度屏幕。该功能显然尚未完成,因为按 Esc 键会暂停该过程,但不显示任何允许用户选择下一步操作的界面。旋转条动画也未实现。这后来演变为 /BOOTLOGO
启动开关,它允许用户指定自定义静态启动屏幕。
在 Windows XP 的开发过程中,启动动画设计进一步发展,尽管服务器版本在 Beta 2 之前继续使用较旧的 Windows 2000 设计。Windows 2000 启动屏幕的浅色背景被黑色取代,大概是为了隐藏一开始慢慢绘制的屏幕。确定进度条也被删除,尽管用于报告进度的代码仍然存在于启动代码中。Beta 1 版本中包含的第一个新设计以白色 Whistler 标志为特色,以及一个充满圆点的动画条。这在 Beta 2 版本中被一种设计所取代,该设计还有白色 Whistler 徽标,尽管是单色的,但带有与 Windows 徽标颜色相对应的四个色条的呼吸动画。Beta 2 设计有两种变体,其中一种具有较旧的 Windows 徽标,而另一种具有新徽标。
在 Beta 2 之后,启动屏幕再次更新,以反映 Windows XP 名称的引入。最初的设计以新的塑料 Windows XP 标志为特色,有一个呼吸的“loading...”标签,尽管它很快被最终的旋转条动画所取代。版本品牌和不同的动画颜色最初用于区分每个版本,但是,自 Service Pack 2 以来,所有版本最终都使用完全相同的启动屏幕。Windows Server 2003 和 Windows Vista 仍然使用整个 Windows XP 启动屏幕设计,尽管品牌不同,动画元素的设计也更新了。后者还包括由引导加载程序显示的备用启动屏幕,可以通过禁用 GUI 引导来启用,并且由静态极光图形和下面的 “Starting Windows Vista...”标签组成。
-
Windows XP RTM(Home Edition)
Windows 7 及以上版本
Windows 7 Build 6469 将通过禁用 GUI 启动启用的备用启动屏幕替换为 Windows 7 项目的徽标,但默认启动动画保持不变。在后来的版本中引入了一个新的引导屏幕例程,现在以 1024×768 分辨率以真彩色运行,[a]并允许它包含可本地化的文本。新的启动屏幕也由启动加载程序和内核协同呈现,这使得在从休眠状态恢复 Windows 时也可以显示它。在常规启动时,第一帧由引导加载程序绘制,而动画的其余部分由内核在开始执行后绘制,这会导致动画开始之前略有延迟。从休眠状态或混合启动期间恢复时,启动加载程序会在恢复过程期间绘制动画。在某些本地化中,安装程序会显示英文版中显示的启动屏幕 1-2 秒,然后切换到 Windows Vista 启动屏幕。
Windows 7 团队对实际启动屏幕动画进行了多次设计迭代。早期的设计通过不同的动画重用了 Windows Vista 极光美学,其中包括 Build 6519 使用的 Vista 极光图形中火花的不确定选取框动画,或者使用 Build 6730 中使用的 Aero 等待光标和旁边的各种状态消息重现登录时的进度屏幕。Build 6780 使用了另一种设计,黑色背景上有一个蓝色的不确定进度条,上面有一个“正在启动窗口”标题。Build 6941 是第一个已知包含最终动画的动画,其中四个彩色光球旋转并形成 Windows 标志。
在 Windows 8 期间,绘制启动屏幕的底层框架发生了重大变化,以支持更广泛的显示分辨率和 32 位调色板,通过称为启动图形库(简称 BGFX)的新实现,利用 VESA BIOS 扩展 2.0 版规范;与 Windows 2000 中首次引入的旧版 BOOTVID
实现中使用的不太充分的 640×480 显示分辨率和 4 位调色板相比,这是一个很大的进步(后来在 Windows XP 中进行了扩展)。
BGFX 实现允许 Windows 内核以更广泛的分辨率显示启动动画,并通过使用包含针对 Windows Phone 8/Windows 10 移动版和 Microsoft Windows 嵌入式版本的优化的启动配置数据(BCD)元素,对某些启动屏幕元素进行更精细的用户控制。默认情况下,大多数版本默认使用 Windows 徽标,尽管某些版本的 Windows 使用自定义图形或文字标记,例如 Windows 8 和 Windows 8.1 的预览版本、Windows 的内部发行版(例如基于 CoreSystem 的版本或 Azure Stack HCI);在某些情况下(例如作为 Windows Server 2012 的一部分包含的服务器核心版本),不存在启动徽标。
在支持 BGRT 规范的系统上,固件提供的 OEM 提供的徽标可以保留在屏幕上,即使在 Windows 启动过程和安装期间(后者由 Windows 登录应用程序处理),替换默认徽标;对于传统 BIOS 系统,BGFX 库回退到徽标位图和 Segoe Boot 字体的 16:9 纵横比变体(用于 1366×768 像素的分辨率),资源在 N
名字下指定。启动屏幕的资源存储在 BGFX 库 bootres.dll
中,既以位图的形式存储在 WIM 文件中,其中包含用于不同屏幕分辨率的启动徽标的六种变体,又作为资源存储在 DLL 文件中,以及存储在启动和系统崩溃屏幕中的字符串的多语言用户界面二进制文件(MUI)中。Windows 8 及更高版本中使用的微调器动画的每一帧都存储为 Segoe Boot 字体中的 PUA 字符,用作启动过程的一部分。
在整个 Windows 10 系列中,启动屏幕基本保持不变,保留了 Windows 8 中首次引入的青色 Windows 徽标。启动屏幕后来在原始 Windows 11 版本的开发过程中进行了更改,以包含新的操作系统徽标,然后是最初用于 Windows 10X 的微调动画,自 2022 更新以来被重新用于 Windows 11 的后续版本。
-
自 Windows 10(原始版本)以来,用于基于 OneCore 的内部版本的启动屏幕
macOS
Mac OS X Server 1.x 在窗口中显示 Mach 内核的启动阶段。
Mac OS X Developer Preview 1 到 10.1 在左上角显示 Happy Mac 图标和 NeXTSTEP 等待光标。
Mac OS X 10.2 到 OS X 10.9 在白色背景上显示带有旋转线条的 Apple 标志。
自 10.10 以来的版本在深色或浅色背景上显示带有进度条的 Apple 徽标。
-
OS X 10.10 及以上版本
-
同上一个。
注
- ↑ 如果系统不支持分辨率,或者用户决定通过将 BCD 变量
graphicsmodedisabled
设置为yes
来禁用较新的启动屏幕,则会使用较旧的 Windows Vista 启动屏幕。 - ↑ 也可以在 Windows 10 的后期版本和从 Build 19587 开始的早期 Windows 11 版本上启用新的微调器动画。