长期担任微软软件工程师的RaymondChen最近在X上回答了一位游戏开发人员提出的一个有趣的复古技术问题。这位开发人员询问了Windows95设置过程中使用的三种不同的用户界面,这些界面从DOS过渡到Windows3.x,最后又过渡到经典的Win9xGUI。Chen解释说,这是一种有意的设计选择,目的是尽量减少Windows95配置体验所需的代码量。
经验丰富的PC用户可能非常清楚Win9x生态系统中MS-DOS代码与图形用户界面环境之间的特殊关系。然而,据Chen介绍,Windows95安装程序中内置的多操作系统支持远比最初看起来要复杂得多。
Chen拥有30多年影响Windows发展的经验,他对世界上使用最广泛的软件平台之一所隐藏的复杂性有着深刻的见解。在撰写TheOldNewThing博客时,他说Windows95设置的目的是为了从MS-DOS、Windows3.1和Windows95本身这三个可能的起点升级系统。这种必要性决定了必须兼容三种不同的计算环境。
设置程序主要是作为MS-DOS应用程序编写的,但设计用于在三种不同的操作系统上运行,以执行不同的任务。当从MS-DOS提示符启动设置程序时,DOS部分是必要的,因为如果不首先在硬盘驱动器上安装Win9x,就不可能访问Win9x环境。
MS-DOS安装组件安装的是最小版本的Windows3.1,仅足以支持安装工具的16位部分。启动到这个微型Windows3.1环境后,16位图形用户界面安装程序就会启动。该程序还可以在完整的Windows3.x环境中运行,甚至可以在已经安装的Windows95操作系统中运行,使用户能够在必要时修复损坏的系统。
Chen解释说,16位Windows应用程序是整个过程的核心,因为它处理了"真正的"Windows95安装所需的大部分任务。这个图形界面负责管理用户交互、收集配置数据、确定要安装的操作系统组件,并执行硬件检测以选择适当的驱动程序。
在将Windows95文件和驱动程序复制到系统后,16位安装程序启动进入Win9x环境。第三个也是最后一个安装阶段涉及一个真正的Win32应用程序,它通过处理安装打印机和配置其他外围设备等任务来完成安装。
通过将这三个安装程序串联起来,微软能够在所有三个主要安装场景中重复使用一个代码库,从而简化开发过程。"每个程序都让你离目标更近一步。一切都只实施一次,"开发人员说。
网站地图、网站地图、网站地图、网站地图、网站地图、网站地图、网站地图、网站地图、网站地图、网站地图、网站地图、网站地图、网站地图、网站地图、网站地图、网站地图、网站地图、网站地图、网站地图、网站地图