Retro Potato: Raymond Chen is once again sharing an intriguing behind-the-scenes story about the making of Windows 95. It turns out that building the setup process for the consumer-oriented operating system was far more complex than initially expected.

Raymond Chen, a Microsoft veteran who has worked on Windows development for more than 30 years, recently explained that the Windows 95 setup caused developers more than just a headache. The final installation process was a hybrid of three different operating systems, because relying solely on the brand-new Win32 technology would have been too cumbersome for consumers.
A few months ago, Chen described how the first stage of the Windows 95 setup was a DOS program designed to install a "miniature" version of Windows 3.1, which then managed the next step. The second stage was a proper 16-bit Windows program that handled most of the setup work. This 16-bit code served as the starting point for users installing Windows 95 from within the Windows 3.1 environment, or even from an existing Windows 95 instance.
"Some people wondered if the MS-DOS and Windows 3.1 versions could install a miniature Windows 95 rather than a miniature Windows 3.1. That would allow the bulk of the work to be done in a fully 32-bit operating system and take advantage of new Windows 95 features," Chen said in his latest post.

The miniature Windows 95 solution was technically feasible but difficult to implement. First, developers would have needed to create a shrunken down version of Windows 95 solely for the setup process. The Windows 95 project was already notoriously behind schedule, Chen noted, meaning the new idea would have been "instantly" rejected by management.
Additionally, Microsoft already had a fully debugged and supported miniature version of Windows 3.1 that could be adapted to manage the new OS installation. Creating a stripped-down version of Windows 95 to just start the Win95 environment would have been theoretically possible as modders have previously demonstrated by reducing the OS to just a few megabytes.
The "Mini.cab" archive included with the Windows 95 setup disk is 441,905 bytes and unpacks to 815,307 bytes. Chen estimates that a miniature Win95 could fit on just two floppy disks, which would have been manageable despite the added complexity and code duplication.
However, the final user experience would have suffered. Using a mini-Win9x setup would have required at least two system reboots, violating the team's "only one reboot" principle. Ultimately, relying on the miniature Windows 3.1 provided the best solution to the problem.
Windows 95 developers didn't have enough time to give the OS its own setup program