Windows 95有一个鲜为人知的重启技巧

2026年01月21日 04:45 次阅读 稿源:cnBeta.COM 条评论

微软资深工程师 Raymond Chen 近日披露了 Windows 95 内部机制中的一项冷门功能:这款早期 32 位消费级操作系统内置了一种“秘密”快速重启方式,用户只需在通过图形界面重启系统时按住 Shift 键,就有机会比常规重启更快回到桌面。该设计利用了当年极其复杂的系统架构,在提升启动效率的同时,也偶尔会导致系统崩溃。

作为一款需要同时兼容 16 位 DOS 软件、16 位 Windows 3.x 程序以及 32 位 Win32 应用的操作系统,Windows 95 在设计之初就背负了艰巨的向下兼容任务。开发团队正是借助这一层叠式结构,在系统中埋入了某些“隐藏优化”,其中就包括这项极少为人知的快速重启机制。

Chen 介绍,这一功能依赖于传递给 16 位 ExitWindows 函数的 EW_RESTARTWINDOWS 标志,而该函数本身是从 Windows 3.1 继承而来,并在当年的微软官方文档中有所记载。根据他的描述,当该标志被触发时,系统会按顺序关闭 16 位 Windows 内核、关闭 32 位虚拟内存管理器,最后将 CPU 切换回实模式,以便为随后的重启做好准备。

所谓实模式,是所有 x86 兼容处理器(包括如今的多核 Intel 与 AMD CPU)最基础的运行模式。像 Windows 95 这类 32 位操作系统会在启动过程中把 CPU 从实模式切换到保护模式,以启用内存管理和安全机制,而现代 64 位操作系统则运行在“长模式”(long mode)下,以利用 64 位指令集和寄存器资源。围绕如何在这些模式间切换并保持兼容,多年来一直是 x86 架构设计中的核心难题之一。

值得一提的是,英特尔曾试图通过名为 x86S 的精简指令集架构,废除 16 位实模式以及其他部分向后兼容特性,但相关计划最终被叫停。按照 Chen 的说法,一旦 ExitWindows 函数将 CPU 拉回实模式,控制权就会交还给 win.com 可执行程序,由它来再次启动 Windows 95,同时绕过完整冷启动中那些繁琐的硬件自检流程,从而缩短整体启动时间。

在当年动辄需要数分钟才能进入图形界面的 PC 时代,这种“快速重启”在实际使用中很可能带来不小帮助。文章作者回忆称,自己早已把这项功能抛诸脑后——毕竟当年是直接从 MS-DOS 跳到了 Windows ME 和 XP,当时使用的奔腾 4 机器在当年已算“高性能”平台。

作者尝试在 PCem 虚拟机中复现这一流程时,却得到了并不一致的结果:在 Windows 95 OSR 2.5 中,该功能完全没有生效,而在 Windows 98 SE 环境下则表现正常。这也从侧面印证了该机制在不同版本中的实现差异,以及整个 Win9x 系列内部行为的复杂性和不确定性。

Chen 进一步解释,win.com 程序由汇编语言编写,除了负责重新拉取系统外,还会执行额外的内存管理操作。其目标是尽可能释放所有常规内存(conventional memory),从而留出一大块连续的内存空间,用于在保护模式下装载 Windows 95;一旦这一步失败,常规内存会残留碎片,win.com 就不得不退回到完整重启流程。这种在兼容性、性能和稳定性之间艰难平衡的设计,也正是 Win9x 系列被视为“混乱却迷人”的原因所在。

相关文章:

Windows 95诞生30周年:彻底改变PC的操作系统

微软老员工解释为何Windows 95未采用HLT节能指令

程序员自曝Windows 95开发团队因时间紧迫无法为操作系统单独开发安装程序

开发人员讲述将Windows 95界面移植到Windows NT的复杂调整过程

对文章打分

Windows 95有一个鲜为人知的重启技巧

1 (50%)
已有 条意见

    最新资讯

    加载中...

    编辑精选

    加载中...

    热门评论

      招聘

      created by ceallan