SEARCH

How-To Geek

Does Windows Still Rely on MS-DOS?

Once upon a time Windows was, well, the Windows dressing for DOS–but is Windows still dependent on the DOS architecture for daily operations? Read on as we investigate.

Today’s Question & Answer session comes to us courtesy of SuperUser—a subdivision of Stack Exchange, a community-driven grouping of Q&A web sites.

The Question

SuperUser reader Rrazd is curious about the history of DOS and how it interacts with the current iterations of Windows:

I am just about to start an OS course and as an Apple user I am not very familiar with the underlying details of Windows OS. I was wondering, is MS DOS still used with Windows running on top or is ONLY Windows used now as the OS? I was a little confused because I read somewhere that MS-DOS is used for booting but Windows has all other OS capabilities built into it and thus is used for all other OS operations…

How much of a role, if any, does MS-DOS play in Windows today?

The Answer

SuperUser contributor JdeBP leaps in with a very detailed and heavily documented answer:

There are two distinct lineages when it comes to Microsoft Windows, and it doesn’t help things when people write things about one lineage that they have learned about the other.

  • The DOS+Windows lineage comprises DOS+Windows all versions up to version 3.11, DOS+Windows 95, DOS+Windows 98, and DOS+Windows Millennium Edition. It has Windows layered on top of DOS. Entire books have been written on the subject of this layering, and it is the subject of some contention, not least because a lot of people for a fair while in the early to middle 1990s wanted the world to believe that DOS was gone and Windows was the operating system.This is the DOS+Windows bootstrap process.
  • The Windows NT lineage comprises Windows NT 3.x, Windows NT 4.0, Windows NT 5.0 (“Windows 2000″), Windows NT 5.1 (“Windows XP”), Windows NT 5.2 (some editions of Windows XP and “Windows Server 2003″), Windows NT 6.0 (“Windows Vista”), and Windows NT 6.1 (“Windows 7″). It is not layered on top of DOS, works in a completely different way to DOS, and can run DOS applications by dint of an NT Virtual DOS Machine (NTVDM) which is a virtual machine that runs on top of Windows NT rather than the other way around.This is the Windows NT 6.x bootstrap process.

What also doesn’t help is when people mistakenly talk of a “DOS prompt” in Windows NT, as has even happened in answers here. Aside from the fact that it is command interpreters that prompt, not operating systems, this conflates “DOS” with “textual user interface” and “command interpreter”, neither of which are in actuality synonymous with DOS. DOS is a family of operating systems: MS-DOS, PC-DOS, DR-DOS, FreeDOS, OpenDOS, et cetera.

If one has a command prompt window open on Windows NT then one is almost always running CMD, which is Microsoft’s default command interpreter supplied in the box and which is an ordinary, textual user interface, Win32 program. There’s no “DOS”, nor NTVDM. There’s just a Win32 program talking to its Win32 console object. And in fact for many TUI programs that one can run on Windows NT, including all of the tools in Microsoft’s various Resource Kits, there is still no whiff of DOS anywhere in the picture, because these are all ordinary Win32 programs that perform Win32 console I/O, too.

Ironically, given that Windows NT 3.1 was released in 1993, the Windows NT lineage actually is the not-based-upon-DOS Windows-is-the-operating-system system that all of the people in the middle 1990s were trying to convince the world that DOS+Windows 95 was.

And, eighteen years later, we’re still trying to get it through to some people that Windows NT doesn’t work like DOS and never has. ☺

Further reading

  • Jonathan de Boyne Pollard (2006). A book list for operating system kernel developers and device driver writers. Frequently Given Answers.
  • Mark E. Russinovich, David A. Solomon, Alex Ionescu (2009). Windows Internals (5th Edition). Microsoft Press. ISBN 9780735625303.
  • Walter Oney (1996). Systems Programming for Windows 95. Microsoft Press. ISBN 1 55615 949 8.
  • Matt Pietrek (November 1995). Windows 95 System Programming Secrets. IDG Books. ISBN 1-56884-318-6.
  • Andrew Schulman (1994). Unauthorized Windows 95. IDG Books Worldwide. ISBN 9781568841694.
  • Matt Pietrek (1993). Windows internals: the implementation of the Windows operating environment. Addison-Wesley. ISBN 9780201622171.
  • Andrew Schulman, David Maxey, Matt Pietrek (1992). Undocumented Windows: A Programmers Guide to Reserved Microsoft Windows Api Functions. Addison-Wesley. ISBN 9780201608342.

 


Have something to add to the explanation? Sound off in the the comments. Want to read more answers from other tech-savvy Stack Exchange users? Check out the full discussion thread here.


Jason Fitzpatrick is warranty-voiding DIYer and all around geek. When he's not documenting mods and hacks he's doing his best to make sure a generation of college students graduate knowing they should put their pants on one leg at a time and go on to greatness, just like Bruce Dickinson. You can follow him on if you'd like.

  • Published 01/10/13

Comments (15)

  1. Connor Michael

    Good points. Also wanted to add that old DOS programs won’t run at all on Windows 7 64-bit machines. Unless you download DOS Box.

  2. Josh B.

    What version of NT is Windows 8?

  3. unity

    Why is JdeBP rant submitted as ” a very detailed and heavily documented answer” really an answer? I dont think the answer required a history of how many confused people existed and how it obviously annoyed him. The answer is No. Now enjoy your class and pay attention to the details that matter in an OS Course.

  4. jrau

    Windows 8 is Windows NT 6.2.

  5. gary knott

    Yes, but a Windows CMD interpreter – a “DOS Window” is called that because
    it interprets essentially the same command language that DOS used.
    It is understandable why one might think DOS is lurking somewhere. Indeed it
    is, not as code, but as language and functionality.

    (Would you like to tell us the history and a short definition of “Power-shell”?)

    Unix “invented” the command-based shell concept. It is still the best way to do many things
    in managing a system. The DOS command language was a stripped-down version of
    the Unix shell language. Did Windows ever come up to snuff in matching the functionality
    of Bash et al?

  6. NSDCars5

    @Gary
    DOS = Disk Operating System
    A CMD prompt is NOT an operating system.

  7. Michael

    @Gary – nice. Started with DOS at the beginning, worked up with OS2 and NT. For us oldies, love the DOS box! I can get into the guts of the operating system through the backdoor, quickly! HeeHee

  8. thegeekkid

    I love cmd on W8… I use it more than the GUI since I hate the GUI so much! One question I would have for the community is that I have heard W8 has a bit of Unix on the back-end. I’m not much of a programmer, so what is everyone’s opinion on that? Is it a fallacy, or truth?

  9. rKiller

    I know this LOL!

  10. bedlamb

    DOS box?
    I thought it was “Das Boot”.

  11. pbug56

    Something else a lot of people don’t know; the NT Kernel was based on the VMS (VAX/VMS) operating system designed by Digital Equipment Corporation for its 32 bit VAX super mini computer systems. It was NOT based on DOS.

  12. Peter Lorenz

    So much easier way to say it, the beginning of NTFS drive format was the end of DOS. Yes DOS programs still work, even in Windows 8 if you set up a virtual machine to make the program think it is running under windows versions like 95, 98 or even XP. No, I am not going to dazzle using a whole bunch of IT language because a person who is asking about DOS is not an IT guy, I hope. DOS was originally designed to run on a machine that only had floppy disks, thus the name. The little > prompt was just a way to get user input. Microsoft struggled many years to get away from a real DOS operating machine because of the people who fought to keep DOS. DOS restricted many growth areas like memory limitations, disk sizes and a very limiting factor of a 32 bit system. As in Windows 8, getting rid of some old standbys, Microsoft just wrote an operating system that just left the old stuff behind. So to sum it up in simple terms, if you must wipe a drive to install a new operating system, you will no longer be using whatever system you had before. Best case in point to go from a 32 bit machine to a 64 bit.

  13. ReadandShare

    I think a great part of the confusion that current Windows are still built on DOS is that when a casual user uses the command prompt — he/she is immediately thrown right back to DOS “look and feel” — monochrome screen, blinking cursor (or dash) — heck, even some of the commands are identical to DOS!!

  14. Big Long Johm

    My Big Cock can install WIndows 8 layered over DOS 6.0 ….. So suck my fat cock

  15. Willy

    Big Long Johm needs to be spanked, have his diaper changed and then put down for a nap.

Enter Your Email Here to Get Access for Free:

Go check your email!