So I re-read that great book, showstopper! which recounts the race to bring Windows NT to market.
So after a lot of digging around I managed to find an old CD, the second public showing of Windows NT, the December 1991 pre-release.
This is the first version that contained both MIPS and i386 binaries. At the time there were lots of issues with the MIPS processors, and the MIPS port of NT was slipping behind the i386 in major ways. So between the first public display of Windows NT at the 1991 COMDEX in October, there was a major push to bring the MIPS release up to some level of parity.
On the way to making Windows NT the team started by cross compiling from OS/2 1.3 machines. And in this release they left the cross compilers in there, which is kind of cool. So I just compiled a simple console application, like this:
And then running it under the pre-release..
Which is pretty neat when you consider it.. And of course in the book there is the coming break with IBM as they pushed not only for the dominant Win32 personality, but also to make NT self hosting. According to the book, NT was self hosting some time in March of 1991, with NT being text only. The first graphics started to show up around May, and Networking as late as August.
Installing the beta is a little interesting as there is no ‘setup’ program at this point. The easiest way to install it is from within MS-DOS. There is a batch file that will xcopy in the needed parts, and then uses debug to write in a new bootsector. After a lot of trial and error I found that the disk works best when it’s under 500MB.
And away we go!
What is interesting about these 1991 releases is that they didn’t include any of the subsystems other then the Win32 subsystem. And the user login screen here actually doesn’t even take the password it’s just a dummy screen. Windows NT is configured from a plain text file nt.cfg . The registry has only begun it’s work at this stage, but it’s just not there.
From a user standpoint it looks and feels more like Windows 3.0 or an early Windows 3.1 beta. Which should be expected from the timeline. Even the games, it’s solitare, winmine, and reversi! All in 32bit glory! Even the help about screen for program manger lists that it’s running in “NT MODE”, as opposed to REAL, STANDARD or 386 Enhanced modes, which were available at the time for Windows 3.0 .
Another thing, is that the ‘administrative’ tools didn’t exist yet. I do know the net command had the start/stop so services are there, if only hidden. NT really didn’t start to feel more like NT until late 1992 when it was getting really close to being feature complete, as they shook the bugs out.
Now the install media has this ‘special’ boot floppy to do a GUI install, which Qemu won’t support because of the lack of the ancient scsi controllers of the time. But with a little pathing I managed to get it to run under NT. I’ll spare you the middle bits, but if you can you can get them here.
And there we go!
Another interesting thing I stumbled across from this time was this: InfoWorld article, which is an interview with Steve Balmer just after the October COMDEX show.
It’s really neat to see something as prolific like Windows NT, which has installed seats in the hundreds of millions what it was like when it was so young and vulnerable.. It certainly was ‘forward thinking’ in that it didn’t run all that well on 386’s with 8MB of ram, a ‘power house’ of a computer back then. But it scales up to machines like my laptop with 8 cores and 6GB of ram just fine. By forcing the portability NT like any other *NIX just ports over and keeps on going.
As a silly story when NT 4.0 was in it’s heyday (sp2!) I ran a Compaq Desqpro 386 with 16MB of ram with NT 3.1 Advanced Server as a MSMail hub. And It’s kind of funny in retrospect but I had all the SQL servers using it for alerts and whatnot, and when it came to uptime NT 3.1 had all the 4.0 stuff beat. Then again NT 3.1 was the ‘pure’ architecture version, before they started the crazed speed hacks of the video/printer stuff moving to kernel space… Oh well that’s my $0.02.