您描述的是 Windows 95 基于 MS-DOS 7.0 的启动架构,这准确地反映了其作为“混合系统”的本质。其核心设计是:以 DOS 作为底层引导和实模式服务提供者,Win32 内核(Windows 95的核心)在保护模式下接管系统,并提供完整的图形化功能

Windows 95 启动与 DOS 关系详解

阶段 控制权归属 核心功能与组件 说明
1. 系统引导 MS-DOS 7.0 IO.SYS, MSDOS.SYS, COMMAND.COM 计算机加电后,由 MS-DOS 7.0(随 Windows 95 附带,不单独零售)完成最底层的硬件初始化和实模式引导。
2. 内核加载与切换 过渡阶段 WIN.COM, VMM32.VXD 执行 WIN.COM,加载 Windows 95 的核心虚拟设备驱动程序(VxD)和 Win32 内核。此过程完成从实模式到保护模式的关键切换。
3. 系统运行 Win32 内核 (Windows95) 图形外壳 (Explorer)、32位内存管理、Win32 API Win32 内核完全接管系统,提供所有图形界面、32位应用程序支持和高级系统服务。此时,系统已不依赖实模式 DOS 来运行。
4. DOS 环境访问 Windows 虚拟 DOS 机 (NTVDM) command.comcmd.exe 用户在图形界面中打开的“MS-DOS 方式”是一个由 Windows 创建的虚拟 DOS 环境 (Virtual DOS Machine)。它运行在保护模式下,是 Windows 的一个子系统,可随时启动和关闭,不影响主系统稳定性。

关键机制解析

  1. “依赖”与“独立”的辩证关系

    • 启动依赖:Windows 95 的启动必须通过 MS-DOS 7.0 的引导程序。这是从历史兼容性和硬件初始化路径继承下来的设计。
    • 运行独立:一旦 Win32 内核(KRNL386.EXE 及相关 VxD)加载完毕,系统核心便运行在保护模式下。此时,图形界面(如开始菜单、文件管理器)、32位应用程序(如 Office 95)和大部分系统功能均由 Win32 子系统直接提供,不再调用实模式的 DOS 代码。您提到的“Windows图形界面完全提供自有功能,并不依赖附加的字符工作环境”正是对此的准确概括。
  2. DOS 窗口的本质
    图形界面下的 DOS 提示符并非重启了实模式 DOS。它是一个受控的虚拟机环境。例如,您可以在这个窗口运行大多数 DOS 程序,但它的内存管理、文件访问等都已通过 Windows 的虚拟设备驱动程序进行接管和仿真,确保了系统的稳定性和多任务能力。

  3. 安装过程的体现
    Windows 95 复杂的安装程序(分为字符界面和图形界面阶段)也印证了这种过渡架构。它需要处理从纯 DOS、Windows 3.1 等多种环境升级的场景,因此安装程序本身也分为多个阶段,链式工作以完成从 DOS 环境到完整 Windows 95 的部署。

与 FreeDOS 的关联

在当今的复古计算或虚拟机场景中,若需重现 Windows 95 的原始体验,可以使用 FreeDOS 作为其底层的 DOS 引导环境。因为 FreeDOS 高度兼容 MS-DOS 7.0 的引导协议和实模式服务。

# 示例:在已安装FreeDOS的虚拟机中,启动Windows 95安装程序的大致步骤
A:\\> fdisk /mbr # 使用FreeDOS的FDISK准备分区
A:\\> format C: /s # 格式化并传送系统文件
A:\\> D:           # 切换到包含Windows 95安装文件的光驱或镜像
D:\\> setup.exe # 启动Windows 95安装程序

安装程序会接管后续过程,包括替换掉初始的 FreeDOS 系统文件为它所需的 MS-DOS 7.0 组件。

总结:您的描述完全正确。Windows 95 巧妙地利用 DOS 完成引导,然后由 Win32 内核在保护模式下实现一个功能完整、不依赖字符环境的图形操作系统。其“DOS 窗口”是一个可随时创建/销毁的虚拟环境,而非系统核心的组成部分。这一设计是微软从16 位向 32 位世界平滑过渡的关键策略。


参考来源

 

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐