Skip to content
Tech News
← Back to articles

The little-known winstart.bat batch file

read original more articles
Why This Matters

The article highlights the role of the winstart.bat file in Windows 95's startup sequence, emphasizing its position in initializing the virtual machine environment before Windows fully loads. Understanding this process offers insights into legacy system architecture and the evolution of Windows startup procedures, which can inform modern virtualization and boot optimization strategies.

Key Takeaways

Reader Otul Osan wants to know what the use case for C:\ WINDOWS\ WINSTART.BAT was, compared to C:\ AUTOEXEC.BAT and when exactly during system startup it launches.

In Windows 95, you could create a winstart.bat file in your Windows directory. During startup, the virtual machine manager initializes and creates the so-called “System virtual machine” (the “System VM”), which is the virtual machine that all Windows programs run in. But before running the user-mode kernel in that virtual machine, the virtual machine manager runs the winstart.bat batch file if it exists.

In pictures: First, we boot up MS-DOS and the command prompt. (Note: All diagrams omit lots of details not relevant to the discussion and are not to scale.)

Stuff (unused) MS-DOS

The box labeled “Stuff” is a catch-all for random things that go at low addresses, like the interrupt vector table and the BIOS data area.

Next, command.com runs autoexec.bat , which might install some TSRs.

Stuff TSR1 (unused) MS-DOS

And then Windows starts up and initializes the virtual machine manager. The system is now running in protected mode with a virtual machine running in v86 mode, and that virtual machine is initialized with whatever was running in real mode at the time the virtual machine manager took over.¹

v86 mode Stuff TSR1 (unused) MS-DOS ring 0: virtual machine manager

I crossed out MS-DOS because the virtual machine manager took over responsibility for the file system and shut off the real-mode file system in MS-DOS.

... continue reading