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.
There is still the problem of having to wait for each stage of the pipe to finish before the next can begin, but there is definately life in the old DOS yet and I'll be using JP's shells long after COMMAND/CMD has gone the way of the dodo.
UNIX? They're not even circumcised! Savages!
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
Ummmmm?
Start->Programs->Accesories->Command Prompt
Or
Start->Run->cmd.exe
Seems like it's there to me. But who knows. It might all be a figment of of my imagination.
S.t.e.v.e.
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
Please mod the parent down. It isn't insightful.
Gates liscensed DOS from SCP. SCP based their product on CP/M, originally written by Gary Kildall.
DOS was advanced by the standards of microcomputers of the day. CP/M's 16-bit version, CP/M-86 wasn't ready when MS-DOS 1.0 hit the market, and by the time CP/M-86 did ship, MS-DOS already hit version 2.0. Version 2 had neat-o features like subdirectories and a Unix-like C API that pushed it ahead of CP/M. CP/M eventually did surpass DOS, but it was called DR-DOS by that time.
Of course, DOS was well behind most all versions of Unix, including Microsoft's Xenix. Peter Norton once wrote that Xenix might have been the "operating system" of the future. Unfortunately, Mitch Kapor wrote Lotus 1-2-3 to run under MS-DOS rather than Xenix. In those days, people bought PCs to run Lotus. The operating system was just the black screen with gibberish text you saw before Lotus booted up.
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
MS-DOS could have survived, if back in the early 90's, Microsoft had wanted to continue developing it. They made it obsolete by choice... I'm sure they could have easily turned it into a multitasking, 32 bit, networked OS, and still could have put a GUI on top of that.
It just wasn't in their best interested to do so.
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.
MS DOS may now have gone away, but in the land of PC-104s TinyLinux and RomDOS will continue to have practical applications. Any system that needs to continually chug along, fit into a peanut sized Flash ROM and otherwise work happily ever after will have a need. MS may be out of the market, but who cares? :)
You say you want a revolution?
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!
You must not have been a CP/M user -- that's Kildall's fault, not Allen's. CP/M used the "/" for options, as in "program/opt1/opt2", and DOS was first and foremost a CP/M workalike.
This next song is very sad. Please clap along. -- Robin Zander
Ever watch a Novell server boot up (well our server here in the office has been up for 516 days so I have not seen ours reboot in a LONG while). The last Novell 5.1 server I setup started it boot-up procedure by loading Caldera DOS.
Also the company I work for still active sells and supports TWO DOS applications. Both are property management programs. Both have large install bases countrywide. Our main product has finally developed a stable window's version and we are slow converting people, but most of our users are still on the DOS version.
DOS is not dead, it is just being phased out of the M$ OSes. This is something that they should have done long ago, but from the comments I have been seeing and hearing they did not remove the limitations that DOS placed on the windows products. Seems that while they may have removed the DOS code, they have not gotten rid of the bloat that it created. Once again M$ gives us a half-assed version of what Windows could be.
As a VAR we will be telling every one of our clients to avoid Windows XP like the plague, if just for the DOS issue. This is hard to do as for some reason small businesses buy computers with Windows ME and Windows XP Home Ed. We still push Windows 98 and have just now started supporting Windows 2000 and now there is a new Windows OS. I am so happy, now I will get to go to sites with Windows 95, Windows 98, Windows ME, Windows XP Home (and pro may be) and a couple Windows 2000s thrown in. All in time for M$ to come in and audit the place for valid licenses. Ridiculous.
Friendly
Beer pong, the gentleman's drinking game.
Edlin is more accurately a clone of ed, the line editor upon which vi is based. I'd bet that edlin predates vi.
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
I havn't used XP yet but I'll be surprised if these DOS features have been removed:
Directory structures starting with a 'drive' letter
Text/Binary open Mode for files (the notorious ^Ms)
The inability to delete a file which is open
File types based on .xxx extension
OS compontents still using 8.3 filename format
From 1990 to 1993, I had the unique opportunity to work closely with Gary Kildall.
By that time, Gary was already in the process of separating himself officially from Digital Research (did you know it was originally named "Intergalactic Digital Research"?) to pursue other interests, but was still in touch with the company on a personal level.
It was a great experience and a wonderful way to start a geek career. I originally was hired to help build and test wire-wrapped prototypes (for an internet appliance no less! in 1990!). Quickly from there Gary recognized my coding abilities and I was writing embedded code within a few weeks of starting.
Microsoft had just released Windows 3.1 and boy was Gary pissed - apparently Microsoft had intentionally modified Windows since 3.0 to specifically not work on DR-DOS (and yes, that's Digital Research DOS, not "doctor DOS"). MS claimed otherwise, but it was enough to pretty much kill DR - DR-DOS never reclaimed the lost market share (the first killer-apps were beginning to hit big in Windows at that point) and you all know the rest of that story.
Now for some ancient history - I was always cringe when I hear the oft-repeated story that IBM chose MS-DOS over CP/M for the PC because Gary was out flying his airplane when they showed up or some variation thereof. This is at best a half-truth.
Gary was already a wealthy man by that point. CP/M was licensed by a variety of manufacturers and DR was doing reasonably well. At that time, there was no reason to think that one single computer architecture would rise to completely dominate the industry - you had Osbournes, Kaypros, Apples, Commodore PETs, and a host of other machines all with loyal followings.
When IBM was designing the PC, they didn't want to merely license a DOS from another company they wanted to own a DOS. This put Gary off, he viewed CP/M as having a future and he didn't want to completely sell out to IBM. Microsoft had no such reluctance. Microsoft sold PC-DOS to IBM and continued to produce MS-DOS - hence MS-DOS vs. PC-DOS. It was a happy relationship for a while, but we all know the rest of that story. DR did go on to license CP/M-86 to IBM as an alternative, but by that time, it was too little too late.
Also, I wanted to comment on the story that during a visit with IBM, Gary typed in some code on MS-DOS and made a Digital Research copyright notice appear - I'm pretty sure this is just an industry legend. Gary never accused them of stealing actual code, just stealing ideas.
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)
Can't expect old dogs like me to leap on the bandwagon just because there is one. Maybe someone will write an MS_DOS emulator for XP ;-)
A feeling of having made the same mistake before: Deja Foobar
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.
History is written by the winners. Not by the losers. Because of this, there are always three sides to a story. The winner's side, the loser's side, and the truth. It's not possible to know all 3 at any given time.