17173 > 游戏资讯 > 科技新闻 > 正文

最早可追溯到 Win 3.1,微软资深工程师详解批处理文件 WINSTART.BAT

2026-08-12 18:05:03 神评论
17173 新闻导语

微软资深工程师揭秘WINSTART.BAT:从Win 3.1到Win 95的批处理文件,专为加载TSR程序而生,避免影响MS-DOS虚拟机。了解这一鲜为人知的Windows启动技巧!

8 月 12 日消息,据外媒 neowin 今天(12 日)报道,微软在长期改进 Windows 的过程中,也为操作系统积累了不少鲜为人知的功能。微软资深工程师雷蒙德 · 陈近日介绍了其中一个大多数现代用户可能从未听说过的功能,就是批处理文件 WINSTART.BAT。

雷蒙德 · 陈在微软 Old New Thing 博客的一篇新文章中介绍了 WINSTART.BAT 的用途、设计初衷,以及该文件在 Windows 启动流程中的具体位置。

据了解,用户把 WINSTART.BAT 放入 Windows 目录,Windows 95 启动时便会执行该文件。不过,WINSTART.BAT 并不是随 Windows 95 才出现的功能。该文件比 Windows 95 早了数年,Windows 3.1 Resource Kit 中已经对其进行了详细说明。

批处理文件可以用于自动完成重复性的日常任务。此类文件本质上是包含一系列命令的简单文本文件,Windows Command Shell 会按照顺序逐条执行。

WINSTART.BAT 的主要用途,是让用户加载终止并驻留程序(TSR),供 Windows 程序调用,同时避免把这些程序提供给独立的 MS-DOS 虚拟机。

获悉,TSR 是一类表面上已经退出、实际上仍驻留在内存里的 MS-DOS 程序,可以通过硬件或软件触发方式重新激活。此类程序过去常被用于通过快捷键调用的实用工具或设备驱动程序,以弥补 MS-DOS 一次只能运行一个程序的限制。

雷蒙德 · 陈以驱动程序为例称,用户可以加载 Windows 所需的网络驱动程序,同时阻止 MS-DOS 程序使用该驱动,从而避免额外占用内存。

雷蒙德 · 陈还通过 AUTOEXEC.BAT 进一步说明了 WINSTART.BAT 在启动流程中的位置。AUTOEXEC.BAT 会在 MS-DOS 启动时执行,并可以加载 TSR。Windows 之后为 MS-DOS 应用创建虚拟机时,这些虚拟机也会继承已经加载的 TSR。

Windows 接管系统并初始化 VMM 后,会创建供 Windows 程序运行的 System VM。在 Windows 用户模式内核启动之前,只要 WINSTART.BAT 存在,VMM 就会执行该文件。

执行时机上的差异正是 WINSTART.BAT 的特定优势。Windows 3.x 和 Windows 95 会通过虚拟机运行 MS-DOS 环境,而利用 AUTOEXEC.BAT 加载的 TSR 会被这些 MS-DOS 环境继承。

WINSTART.BAT 则不同。通过 WINSTART.BAT 加载的 TSR 可以供 System VM 中的 Windows 程序使用,却不会进入独立的 MS-DOS 虚拟机。

AUTOEXEC.BAT 加载的 TSR 同时可供 Windows 及其 MS-DOS 环境使用,而 WINSTART.BAT 加载的 TSR 只供 Windows 本身使用。

【来源:IT之家】
关于WINSTART.BAT,Windows,批处理文件,TSR,MS-DOS,AUTOEXEC.BAT,虚拟机,Windows 95,Windows 3.1,启动流程的新闻