MS DOS: A Eulogy
roadhog95 writes: "Love it or hate it, I'm sure everyone's got a love story or traumatic memory of the infamous MS-DOS. Byte magazine reports on the passing away of DOS in light of the recent Windows XP launch. Even Regis Philben stopped by to pay tribute: 'Bill... Is that your final command prompt?'"
While it was around I could always use this joke..."I know DOS backwards...it's SOD". I guess I'll need to find/think up/steal some more material.
This just sounds like a Microsoft publicity stunt more than anything. A sort of "We have evolved beyond needing prompts, and are now fully graphically inspired."
Still, I'd be willing to argue that the removal of legacy DOS functionality isn't always a good thing. You break functionality with code that used to run on previous MS Operating systems. Furthermore, I'd imagine everyone who's been working in computers for awhile has watched the Windows GUI break, and then need the command prompt to fix it.
Now on the other hand, this may be a plus. Microsoft might actually believe that Windows is stable enough that you don't need the DOS prompt anymore. Stability is always good. But even on the most stable platform in the world, I'd still rather not have something crippled from my operating system just because MS doesn't think I need it anymore.
But back to this little tid bit of a story...just a marketing ploy, not really news.
With the creation of the 32-bit Windows OSes, Microsoft had these relatively unpleasant hacks involving wowexec and system/system32 folders. I suppose they were relatively necessary (although I'm sure folks here could have thought of a better way, but we have the benefit of hindsight).
Now they're finally leaving 16-bit behind, only to introduce similiar (if not worse) hacks between 32-bit and 64-bit OSes. Instead of following their old design (which at least would have been consistent), they opted to use the system32 folder to hold 64-bit stuff, and to have another folder (is it system64?) hold the 32-bit stuff.
Confused yet?
Oh well...
And so it goes.
Where are my Karma Points when I need them?
DOS wasn't licensed from Gary Kildall (who actually was the father of CP/M), but from Tim Paterson.
You would have known this if you had read the article you're commenting on.
here @ freedos.org
I have used it for formating and fdisking fat16
and fat32 filesystems, or to remove linux
partitions without a linux bootflop or bootcd.
And i know people using DOS for there daily
programming, creation of Embedded Systems and
ofcourse webbrowsing and chatting....
Quazion.
From "Microsoft the Company"
http://www.aaxnet.com/topics/msinc.html
* 1982 - Digital Research sues Microsoft and IBM - Wins - . It was obvious MS-DOS and its PC-DOS variant were simply rip- offs of Digital Research's CP/M operating system. It remained only to prove it contained DR code. DR's Gary Kildall sat down at an IBM PC supplied by IBM and, using a secret code, got it to pop up a Digital Research copyright notice.
It's case won, Digital Research received monetary compensation and the right to clone MS-DOS. This is why Microsoft never sued DR over DR-DOS, but used every other means to destroy it. The settlement was under a strict non- disclosure agreement, so few even know DR sued, never mind that they won.
Digital Research was purchased by Novel and destroyed by neglect and mismanagement. The products now belong to Caldera, which has filed suit against Microsoft over predatory practices used to destroy DR-DOS's market.
What I always found funny was that when a certain DOS program went bezerk, EMM386 thought to jump in and save your ass with... that's right, shutting down the computer before you could save _ANYTHING_, showing words similar to:
"EMM386 has shutdown your computer to prevent loss of data".
Thankfully these days are over... o wait, nv_disp.dll just went into a stop 0xea
Never underestimate the relief of true separation of Religion and State.
Calling MS-DOS an operating system is stretching the concept quite a bit.
DOS was nothing but a glorified interrupt handler. It wasn't unstable, since there was practically nothing to be unstable with.
It didn't protect itself from userland programs, which is generally considered a bad thing. Granted, this gave the programmer freedom to completely work around the operating system, but at the same time allowed said programs to royally mess things up.
From a single-task, single-user system, it was quite good, provided the programs behaved nicely. DOS Extensions even provided it with protected memory, making life a bit easier.
New command interpreters, like 4DOS, injected new life into the system.
If you accepted it as a single-user, single-task enviroment, it was adequate.
I find the decision to remove any and all CLI from Windows a bit odd, considering that Apple went the opposite direction with Mac OS X.
[Bil Gates] stated, "It's the end of the MS-DOS era," referring to the exorcism of 16-bit code from the Windows code base.
What, again??
What is the sound of one hand clapping?
cat
People keep complaining about DOS all the time... about autoexec.bat, config.sys, and what not. IMHO, DOS was and _is_ one of the best and cleanest operating systems to learn about the intel architecture. Where else can you issue BIOS interrupts, and play around with system memory? Linux doesnt let me do that unless I compile a kernel module, and what not.
Trey, DOS wasnt the best desktop/server/handheld Operating System, but it surely was a great learning experience for all who used and programmed for it.
I still use TurboC on DOS when I need to try out some small program, and dont want to wait for linux to load.
Another point, I dont think you can ever have a successful operating system without any command prompt. Copying and moving files can never be as easy using a dumb GUI file manager.
Don't Panic
it still has 'edlin' -- whoohoo!
try { do() || do_not(); } catch (JediException err) { yoda(err); }
Somehow I don't think DOS is as dead as they make it out.
I guess this means we will now never know the correct answer to -
Error reading drive A:
Abort, Retry, Ignore?
Here's my reality... and I'm not kidding about this, but feel free to mod up to "funny".
I work for a software company, maintaining 15 year old DOS Software. The company is owned by older people that can't move fast enough to be in this industry... but somehow, we're still managing to sell this software to unsuspecting people.
We have 2 applications... both of which are touted as "high-end", mission critical apps. A typical installation could cost the client somewhere around $50,000 USD, sometimes more. Here's what they get:
1. A nasty DOS app written in Qbasic, using a Btrieve database on a Novell Server, all running over our favorite protocol, IPX.
Sounds good? Well, its my nightmare!!!
When win2k was released, a lot of little things in our DOS app stopped working. Our company's president refused to believe that MS-DOS was anything less than cutting edge. Now that XP was released, and more things are broken, our company's president refuses to believe that microsoft would abandon DOS.
Anyway, enough rambling about this. Its a sad fact that there are companies STILL working with DOS programs. Sad. Even worse, is that I'm typing here, rather than working on that Qbasic crap.
c:\> del *.*
Skiers and Riders -- http://www.snowjournal.com
Even through I now solely use Linux I will miss DOS. It was my first operating system and my lifeline whenever the users on the network screwed up with their Window$ boxes.
With DOS and Doom I learned syntaxsis, options and commands. It gave me the challenge and the boost necessary for me to head towards an IT career.
So long DOS, you were Window$ last hope!
Writing: no longer done with the fountain pen, now done with an eraser.
The water is getting muddy, here, so let me explain for those who are lost in the buzzword-bingo:
First there was DOS (well, not really, but that's where my story begins). DOS was not really an OS so much as a very simple library and some interupt handlers. The command-prompt was a program that came with it, and a very important one (so were "dir", "del" and others).
When MS decided to build a graphical interface, they did so on top of DOS. DOS was still there as the core interupt handler, but Windows was how the user interacted with the system.
This posed some problems. Windows was not a multi-tasking OS because DOS was not. Windows faked it by giving applications library routines that let them manage their own time-slices in a cooperative multitasking framework. Any app that wanted to take over the system simply avoided calling those routines, but that would be considered bad form.
Eventually, MS build may kludges into Windows to allow memory protection and something resembling premptive multi-tasking. These are good things, but 95, 98 and ME are all still DOS-based.
With NT (2000 and XP are NT versions) MS wrote the whole OS from scratch and did a fairly good job at the low levels (yes, NT is a nice OS down near the hardware where you never interact with it). At the higher levels, they just took the miserable waste of system resources called Win32 (MS' port of Windows to a 32-bit environment) and pasted it on top of NT. Win32 has grown and become more NT-friendly over the years, but it's still the vestige of a DOS-based windowing environment on top of what is arguably a fine OS.
Woefully, the dream that MS engineers had of creating a flexible mircrokernel platform was also squashed. NT was supposed to have several smaller sub-systems to support many types of application access (the POSIX subsystem is a demonstration of the dismal failure of that plan). In reality, all NT, 2000 and XP apps have to go through Win32 to be useful, and Win32 is what most folks think of when they think Microsoft OS.
In the end, the recent press about DOS disapearing is actually misleading. DOS may be gone from NT, 2000 and XP, but the legacy of Windows remains, and will continue to taint MS products for a very long time.
Edlin wished it had the intuitiveness and user friendliness of writing in your own blood using the stump of your foot for a pen.
This next song is very sad. Please clap along. -- Robin Zander
I can understand why they offer it -- there's probably still a few places where legacy DOS apps are in place, and IBM has a long history of never ever backing away from a technology it's made a "strategic commitment" to. Still, it's funny to click on the "System requirements" link and see "Intel 8088/8086, 512K RAM, 6-18MB hard disk space". Kinda takes ya back, doesn't it? (snif)
-- Jason Lefkowitz
Read my blog.
Im serious :) who is making games with *great storytelling* like the old dos games?
...
...
Dos games were great because the graphics SUCKED so you *HAD* to tell a good story to keep anyone interested
IMHO, 3d was the worst thing to happen to games. Kids buy games for "Awesome graphics" (tell me what that means someone)... because people are too stupid anymore to tell presentation from content! If you wrap a pile of shit in pretty box they'll pay for it
(end rant)
Free Techno/Jazz/DNB/MI Music by guys obsessed with monkeys!
This is a classic example of how nostalgia can be stronger than history. MS-DOS was terrible, so terrible, in many ways. It has nothing to do with the 16-bitness of it, or even driver memory crunch hell, but simply that the command prompt side of it was an embarrassment from day one.
It took over ten years before there was any kind of command history (with doskey, you could finally hit the up arrow to recall previous commands). There wasn't a real alias mechanism until doskey either. And heck--and everyone forgets this--you couldn't even properly edit the command line until doskey came along. File completion was never standard. The batch file commands were braindead and severely limited.
Sure, some third parties walked in with their own top notch command processors--most notably JP Software with 4DOS, which is still better than every UNIX shell I've ever used--but even with over a decade to work on it, the largest PC software company in the world couldn't manage to write decent command processor given years to do so. And the worst part is that it was so easy it could have been a high school project. Dr. Dobb's Journal even published the source code for a bash-like shell that replaced command.com.
I think the likely answer here is that Microsoft could have written something better, but they spent a decade trying to beat down MS-DOS and replace it with something else. Remember, Windows 1.0 shipped in 1985. So for all that time, MS-DOS users were stuck with an intentionally inferior product. It's difficult to forget the pain of those days.
Come on, don't you remember all the OS/2 vs. NT 3.1 articles when NT 3.1 shipped? NT 3.1 was a flop, mostly used as a testing ground for people interested in keeping up with MS's new plans.
NT 3.51 was the first successful version of NT. NT 3.51 SP 5 was amazingly stable... it would be interesting to put an NT 3.51 SP 5 machine up against a Windows 2000 SP 2 (NT 5 SP 2) machine and compare.
Win32s was the backwards port of the core of the Win32 API to Win3.1. The two goals were:
1) Get new applications written against the Win32 API so NT (the future) would have some applications
2) Break OS/2 Windows compatibility layer... they kept changing Win32s until they broke OS/2, then they released apps for Win32s.
Windows 4.0 (Chicago AKA Windows 93 AKA Windows 95) was the version that combined DOS/Windows (to stop the DR-DOS onslaught) and introduced the Win32 API as the standard API. Win95 resulted in the Win32 apps that allowed NT to show some success on the desktop. NT 3.51 had some success as a server (very useful environment for managing Win3.1 desktops without the cost of Novell).
Win95 had some new APIs, which were mostly ported to NT 4 (except DirectX > 3 APIs). When I was at Citrix (MS Blocked WinFrame 2.0, then basically bought it to become Terminal Server), we couldn't support newer versions of IE because WinFrame 1.x was based upon NT 3.51, and IE required Win95/NT4 APIs.
Cairo was supposed to be the end of Windows with NT 4. Two years late and without a lot of functionality, NT 4 had (and still has!) some good server-side support and corporate desktop standing. When NT 4 lacked a lot of the functionality, MS declared that Cairo was a set of projects, not a release, and that some of them would be in NT 5. NT 5, two years late as Windows 2000, finally made a nearly API complete NT to match their home desktop dominance.
Windows XP appears to use a nearly identical system, focusing on a new user experience based on MacOS's improvements.
Microsoft has finaly achieved its 8 year goal of eliminating DOS support, ME was the end of the DOS based Windows, and it looks like all the old DOS games are finally dead. MS kept promissing better support for DOS apps/games in the next version of NT, but never delivered, instead stalling on their demise. Oh well.
Interestingly, NT 3.51 (I don't recall NT 3.5) was extremely portable, commercially supporting 4 processor families (this continued until NT 4, but the other platforms failled to take off).
The DOS support in NT, the NT VDM, emulated a 286, albeit much faster. This is the reason that you couldn't run fancy things in the DOS emulation, if it was a protected mode DOS API (386 DOS app), the NT VDM couldn't handle it.
Hopefully a better solution than VMWare (overkill, complexity, etc.) will exist to run old DOS games in emulation. My brother bought me the commercial version of Abuse (at one time a favorite) as a present, but I got it about 2 weeks after I migrated to NT 4 fulltime. Well, my new HTPC (home theater PC, just for gaming, I got me a progressive scan DVD player already) is going to be 98SE or ME based for gaming compatibility, so I guess I'll be able to play the old classics there.
Alex
On occasions I have had to explain to people which versions of Windows really run on top of MS-DOS. It is somewhat confusing because MS changed all the names around. Here is a list that might be of interest here.
The following versions of Windows run on top of MS-DOS:
Windows 1.x
Windows 2.x
Windows 3.x
Windows 95 (Bundled MS-DOS 7.00 that is no longer sold as seperate product)
Windows 95 OSR2 (Bundled MS-DOS 7.10)
Windows 98 and 98SE (Bundled MS-DOS 7.10)
Windows ME (Bundled MS-DOS 8.00, but exiting to MS-DOS is now forbidden)
The following versions of Windows do not run on top of MS-DOS:
Windows NT 3.1
Windows NT 3.5x
Windows NT 4.0
Windows 2000 (NT 5.0)
Windows XP (NT 5.1)
Change this registry setting: /F:ON.
/? will give you more information if you care.
"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor\Completetion Char"
to 0x09 and TAB will work, even without
cmd
One of the interesting things about most of the anti-Microsoft conspiracies is that they all involve settlements covered under Non-Disclosure agreements. This way there is no way to validate the authenticity of the story.
It makes it rather convenient.
At the time there was no secret that the new MS-DOS was very similar to CP/M-80. CP/M is what people were used to using and seeing, and so Patterson designed his new OS for 16 bit processors to behave similarly. But there were also pieces of functionality that arrived into MS-DOS that were similar to Unix.
It's also entirely possible that it included some similar code. CP/M-80 BDOS could be disassembled and carried in your briefcase. It only took up around 5-7K of RAM and wasn't that complicated at all.
Besides, if MS-DOS had really been a copy of CP/M, wouldn't it have also implemented the PIP and STAT commands?
But the real question is... does it matter?
From everything I've read of Gary Kildall and Digital Research, already at the time IBM first approached them the company was too big for Kildall's liking. He was not a manager, he hated it. But he was also a control freak and couldn't stand someone else running things for him.
One story I read indicated that he often would walk around the office building afraid to go in, and that at one point he even offered to sell the whole thing to a friend of his for $50,000.
One of the realities is that some people are willing to grab success, and others aren't. There are a lot of people in this world who purposefully miss an opportunity because they are unhappy or uncomfortable with assuming the responsibility it might entail.
Kildall was one such person. Obviously Bill Gates is not.
It's that difference in personalities that is really the secret behind Microsoft.
Personally, I know that I'm a lot like Gary Kildall in that regard. But knowing this I also try to not be resentful when I pass up an opportunity.
I don't see any mention of that revolutionary MS Bob system that was going to make life worth living. Am i the only one who remembers when Egghead had stores, this was a featured software of hte week thingie in one of their fliers. I remember saying to the wife, that it was a stinker. I think the assistant was Bill himself if I remember correctly.
When a friend of mine was working at Computer City, they had the launch party for Microsoft Bob. The store had preordered something along the lines of 7 thousand copies to meet the anticipated demand. They sold four.
Not four thousand. Four.
And then they were all returned within a week.
(Adding insult to injury, the mylar balloons with the Bob logo were floating around the barnlike interior of the store and setting off the security alarms for weeks.)
Truly a stellar product, eh?
--saint
The thing that looks like an MS-DOS window under NT isn't. That's a 32-bit command line interpreter that runs on top of NT, looks vaguely like DOS, but has no involvement with the 16-bit system.
...there was QDOS. This stood for "Quick and Dirty Operating system."
Then, Microsoft bought it, got rid of the "Quick" and kept the "Dirty."
That left us with MS-DOS.
Give me my freedom, and I'll take care of my own security, thank you.