Lots of comments, where to begin ...
> If MS and IBM contined work on OS/2 and spread it I would probably
> don't know what the DOS is :)
That was the whole point: "A better DOS than DOS, and a better Windows than Windows." They wanted DOS 4 to be the last cmdline OS ("obsolete"), but that never happened. OS/2 first appeared in 1987, three years after the PC/AT (286) and had lots of improving to do. In particular, the whole "penalty box" and high cost of RAM didn't help anything. (Supposedly there was even a RAM shortage in 1987-8.) Gordon Letwin (of MS, OS/2 fame) has said in interviews that they thought OS/2 overcoming the 640 kb limitation [N.B. an IBM PC limitation, not 8086's fault, Tim Paterson easily used 1 MB on his machines] would've sold it, but they didn't anticipate DOS extenders! 
> Back when Intel released the 80286 CPU, everyone was waiting for a
> new OS that would take advantage of the chip's abilities. AT class
> machines essentially just became fast DOS platforms.
The 286 came out in 1982, only a year after the original IBM PC. I'm not sure, but I guess IBM was only targeting businesses initially. Anyways, nobody had jack for RAM at that point, 64 kb to 128 kb was common. In that case, you really really really don't need a 286 (or thus OS/2).
> OS/2 was supposed to be that OS, but IBM and MS couldn't agree on
> direction. MS wanted to skip over the 286 and develop for the
> 386 instead. IBM said "No, we're developing for the 286."
I don't think that's true. Bill Gates did allegedly say the 286 was "braindead" for not supporting DOS better while in pmode. But if MS was so against 16-bit, they wouldn't have supported Win 3.x for so long.
IBM sold a lot of 286s and pledged long-term support for them. In fact, I think MS did (almost?) all the development of OS/2 1.1 (or such), which was entirely 16-bit. In fact, I don't know if MS had any hand at all in (later, 32-bit) OS/2 2.0. In fact, I guess they couldn't as they'd already split (1991) before then (1992).
> In retrospect,
> this was an error. While the 286 offered additional capabilities, it
> was essentially a transitional step, and the 386 was a far better platform.
I don't think they meant it to be transitional. 1982 to 1986 is a long time. You can't gloss over that R&D, software tools, etc. Sure, in hindsight, everybody says the 386 was better, but it came about gradually, not overnight.
Besides, anybody who could live with an 8088 w/ 1 MB of RAM could live with an 80286 w/ (ideally) 16 MB! It would've seemed insane to suggest higher in those days. In fact, I still think it's insane that we "need" greater than 4 GB nowadays (and multi-Ghz cpus)! It just blows my mind.
> While the 286 had features, it had limitations. Like you could only run
> one "real mode" application at a time,
You could only run one app at a time, real mode or pmode! Task switching ftw! Still better than nothing! Besides, even 386 cpus just switch tasks in the background on you, so it's not "real" (?) multitasking. A lot of local ads, when multi-core first came on the scene, started saying, "Finally, TRUE multitasking!" But does it matter? It's (almost) all the same to the end user anyways: whatever works.
> and while there was an instruction
> to enter Protected mode, there was none to leave it - you had to do a
> CPU reset.
LOADALL also existed (but undocumented) and was used by a lot of MS software, so much so that 386 and 486 BIOSes all (allegedly) had software emulation for it. (And that's not counting the newer LOADALL386). But modern cpus don't support either instruction anymore (I think??), possibly due to US DoD recommendation (eh??).
BTW, I've read that newer PS/2 models had faster mode switching to help speed this up (presumably for OS/2).
> There were a couple of early attempts to port Unix to the
> 286 that had problems because the chip didn't offer the sort of
> hardware memory mapping and management something like Unix really needed.
Right, no MMU, or such, which was later (386) useful for things like EMM386.
> If OS/2 had been developed for the 386 in the first place, and IBM and
> MS had been able to maintain their collaboration, we might all be
> running it now. In many respects it was technically superior to Windows.
Pre-emptive multitasking, threads, no 640 kb limit. But a few MS developers (on the side) developed Win 3.0, which was a huge success, but it pissed off IBM. So IBM (allegedly) wanted them to a). drop all Windows support, or b). make all Windows APIs backwards incompatible or only for OS/2 or such. MS allegedly "refused" ("we care about our customers' software"), so they were "fired" (1991). Of course, I don't think they minded, really, they wanted it all for themselves anyways (e.g. NT 3.1 was their 32-bit pre-emptive OS headed by ex-VMS dude Dave Cutler).
I saw some old OS/2 ad somewhere (YouTube?) where they bragged how you could print and do something else at the same time. That was a killer feature, apparently, vs. Win 3.x (though I can't remember exactly).
> The final nail in OS/2's coffin was IBM's decision not to provide
> support for 32 bit Windows applications. You still find it around.
I don't think they had a choice! When MS split (fired?) in 1991, both sides had full sources to MS-DOS 5.0 and Windows 3.0. But I think IBM still had to pay royalties and licenses for it. So that was probably expensive. Also, IBM had to develop their own "fork" (newer PC-DOS versions) and add-on to OS/2 2.x / 3.x / 4.x. I'm sure they would've liked Win32, but they didn't have any way of implementing it (at least not easily). MS "controlled" the "standard", which was their way of not "dying out" like OS/2 ("too compatible" for its own good).
> The last I knew, the ticket kiosks in the main railroad station here
> ran OS/2. I used to have an OS/2 server at a former employer for
> a specialized telephony application. It just ran. It there was a problem,
> reset it, and it took up where it left off.
It was allegedly more stable than Win 3.x, that's for sure. Win 3.0 was initially planned to be a DPMI client app (and Win16 apps used DPMI internally), but later they changed their minds. (Even OS/2 later added DPMI support in 2.x.) It's half-true that it was a DOS extender, but unfortunately, it wasn't perfect (esp. Win 3.0 had more bugs than later versions). But the DPMI spec was new (and "better" than VCPI) and they needed some way for DOS apps (esp. 32-bit) to cooperate with Windows. Win16 apps could multitask in 286 mode, but DOS couldn't except in 386 mode. (And keep in mind that despite designing DPMI, MS never bothered implementing the 386 version [DPMI 1.0] in any Windows. Even OS/2 only halfway did [literally, they support the non-existant version 0.95, heheh].)
Of course, if you believe the hype, Win95 (Win32 console) obsoleted DOS (while still using DOS to boot and do some underlying services). MS would claim that Win95 was "better" with its GUI and bundled drivers, thus making development easier, but really it was just a (successful) grab for control of the then-booming DOS market (e.g. Doom [1993] used Watcom and Quake [1996] used DJGPP).
> In this I would agree MS :) 286 PM was crappy hybrid
Crappy? Hybrid? How so? I'm not directly disagreeing since I probably know less than you, but it surely doesn't seem like a hybrid. It wasn't a compromise either, just a "natural" (?) extension to add protected memory and also extending beyond 1 MB (up to 16 MB). Consider that 80286 was from 1982, PC/AT was 1984, 386 and VCPI and PharLap was 1986, OS/2 was 1987, Win 3.0 and DPMI was 1990, and Win 3.1 (last to support 286?) and BP7 was 1992, you can see that things developed slowly over time.
> and 386 PM still
> suffer with some legacy due to 286 compatability (like decriptor
> structures with fragmented 32bit address and other fields...).
> Interesting how well OS/2 later utilize 386 (I mean CPL2, so it didn't
> run under some simplified VM)
A lot of stuff in later OS/2 versions was 386 only. I think some internals were still 16-bit. And of course they still utilized a lot of MS code (e.g. HPFS386 driver??).
> Hm, now there's ODIN allowing to run some win32 under OS/2...
Yes, but I'm sure it only runs a small subset. (Though I never had OS/2, so I can't say for sure.) I don't think they got a lot of help from MS for it. 
> A father of one of my friend works in a bank where AFAIK they still
> have some machines with OS/2 Warp 4.0. My friend copied install
> diskettes and this is how we meet OS/2 and I must agree that it was
> far beyond over windows...
OS/2 was declared to be the future, even by MS! But later they had disagreements and split.
> But sometimes it happen that inferior product wins and spreads :P
They put a lot of effort into NT 3.1 [1993?], but it used too much RAM and lacked a lot of (then important) DOS compatibility. So they developed and kept up Win9x for a long time (until WinME). Then they (barely) patched up Win2k to be WinXP, and we all lived with that (and mostly successfully) until recently. Then all hell broke loose with Vista on up (and AMD64 doesn't help!).
(split, too long!) |