Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
How to ensure that your program does not run under Windows 95 [pdf] (pearsoncmg.com)
48 points by Rusky on Feb 18, 2015 | hide | past | favorite | 20 comments


This is an excerpt from "The Old New Thing" by Raymond Chen, in case you were wondering like me.


One of my favourite books ever. Raymond Chen's blog of the same name has a new and almost always very interesting article about software development (on Windows in particular, of course) every workday. The most interesting and entertaining blog posts were expanded and make up the book. Chen has formidable talents both as a programmer, as well as as a writer.


A bit of Raymond Chen trivia: he is as far as I know the only person to appear in the Linux kernel credits file with an @microsoft.com email address.


Huh. Looks like it's for scripts/Configure, which doesn't exist in the 2.6 series? Was this an older version of `make config`?

There are certainly a lot of people in `git log --author=microsoft.com` (and in MAINTAINERS), for Hyper-V guest drivers and the like.


Although the author removed the names of the publishers to protect the guilty, you can google many of the error messages to find out who he's talking about.


The proper way, in 1996, to insure that your program would not run under Windows 95, was to make it run under Windows NT 3.51, which was available and stable at the time. Under NT, you could use OpenGL, NTFS, security features, and TCP/IP networking (that was an add-on called "Plus!" in Win95) which consumer-grade Win95 didn't support. You could run high-end applications such as Softimage|3D. You could even run NT 3.51 as a network server.

NT 3.51 also offered a nice feature known as "not crashing". It was a far more reliable OS than Win95, which had a huge amount of legacy and backwards-compatibility code. On NT 3.51, the 16-bit subsystem could be disabled at boot time, and everything ran fine without it.

Windows 8 still has the 16-bit subsystem.


Yes, nt 3.51 was pretty cool back in the day, however, your snark is a lot less interesting than the article, which went over quite a lot of things MS not only found, but wrote workarounds for when possible, so Win95 would work with crappy programs. Furthermore, Windows 8 does not have the 16 bit subsystem in the vast majority of systems shipped. None of the 64 bit versions of the operating systems ship with 16-bit Windows on Windows, and the 32 bit version is pretty much only shipped if you have very specific needs.


Pretty sure tcpip was included (but not installed by default) in win95 from day 1; plus! only added internet explorer.


> Windows 8 still has the 16-bit subsystem.

Not on 64-bit systems, I believe - i.e. practically all shipped systems.


Could you really not use OpenGL under Windows 95? I seem to recall running GLQuake and GLQuakeWorld a good while before the release of Windows 98. GLQuake was released in 97.


I am pretty sure glquake used a weird system of drivers called mini-gl that were either provided by ID or graphics card makers. They only supported an extremely limited subset of opengl. See: http://en.wikipedia.org/wiki/MiniGL


Windows 95 included OpenGL and used it for screensavers.



Look how far we've come since the early 90s. Like, no, really--this is the sort of arcana that we can basically ignore today completely.


I actually have found memories of Windows 95, Service release 2.5 of course. Yes programs crashed here and there but it wasn't until Windows ME did I know the true meaning of crashing. Thankfully I had also had Windows 2000. I thought it was the best piece of software ever written at the time!


It's frankly amazing that Win ME managed to be so much less stable than previous iterations of Win 9x. I dealt with it for a year or so in college before I was able to get my hands on something better, and it was basically a "run once" OS, as in you ran your applications once and then rebooted because anything else would guarantee the appearance of the BSOD.

People complained about Vista, but it was smooth sailing in comparison.


I also used ME for about a year but I don't remember it crashing once. Never understood why everyone had such problems with it, I thought it was just Windows 98 with USB drivers.


I read that mixing VxD and WDM drivers was part of the problem.


If MS didn't turn OS/2 2.0 into a fiasco, DOS gaming would not last as long.


they didn't turn it into a fiasco. they did what they are good at at the time. bait and switch.

they baited ibm (oh boy, yet again. don't they ever learn) and then run away with as much code the contracts allowed and then some and launched NT.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: