The little-known winstart.bat batch file

Published: 2026-08-26

The little-known winstart.bat batch file
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…

Originally sourced from Hacker News

Read the full story on Global Insight Daily