Someone I know is looking to buy a computer but wants XP Professional on it because he has heard that the DOS functionality is limited in XP Home versus XP Professional. Is this true, and if so, what is the distinction?
This Microsoft page shows the differences between the two editions. I don’t think there is any difference in the DOS functionality.
I have used both extensively and I do not believe there is a difference. I also can’t fathom why there would be. Is he looking to do something exotic?
There are other, enhanced versions of DOS that you can load on any Windows computer as well.
He said that he heard that you cannot run DOS software in XP Home but can in XP Professional. Basically, he is under the impression that you are limited to simple DOS commands but are restricted in terms of running DOS software on it.
Also, please elaborate on the enhanced versions of DOS that can be installed. Is this a commercial product?
That is simply not true. Windows XP Home has a DOS capatibility mode. It is probably even more important on home because people always insist on running all kinds of old games. It has the command line as well.
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q292533
True that XP has a BOS compatiblity mode, but in my experience it just simply sucks.
There is a great utility out there called DOSbox that runs older DOS apps phenominally.
DOS in the NT family isn’t really DOS, it’s a DOS emulation, running in a virtual machine (although I cannot convince my boss of this fact; he swears blind that XP is just a ‘front end’ for DOS). The command set in NT family command line environments is rather more basic than that which was available in DOS mode on Win98, because it more or less reflects the command set that was standard to all families when NT originated (I was going to say ‘split off’, but that might not be particularly accurate).
Anyway, because it’s an emulation in a virtual machine, it does not have direct access to hardware, so any old DOS programs that try to do low-level operations will either not work properly (so maybe in a game, the sound won’t work) or won’t work at all.
I believe there are a few DOS products out there. One that I have read about is an open source project called FreeDos. that is always being improved.
Your boss is silly. Part of the whole point of NT was to go native, IIUC.
I have XP home and ran a DOS version of Doom just fine. However, I also tried to run an old game from a box of Wheat Chex that uses the Doom engine and the sound doesn’t work right.
However, this is not an issue of the difference between DOS on XP Home and XP Pro, but as mentioned there is none (or probably none). I can’t imagine the point of making them different.
I’ve always hated the “shred” or “piece” of DOS which comes with windows. Many of our old hydrology DOS programs run in DOS. My colleague has a newer Dell which inexplicably quit running these hydrology programs in the DOS shell, the other day. :mad:
A pox on windows !!
Microsoft used to have two seperate OS lines, one called “windows” and the other called “nt”, which was kinda confusing because nt was also called windows. To further add to the confusion, the marketing weenies at microsoft stopped following their own naming conventions. If you look at how the operating systems identify themselves, it’s a little clearer.
Windows 95 = Windows 4.0
Windows 98 = Windows 4.1
Windows ME = Windows 4.9
NT 4.0 = nt 4.0
Windows 2000 = nt 5.0
Windows XP = nt 5.1
The “windows” operating systems all contain a true version of dos (which identifies itself as dos version 7, IIRC). They are not, however, just a front end for dos. Once the operating system is up and running, they use their own drivers, etc. and don’t use anything from dos. However, all “windows” operating systems were capable of running disk drives in “dos” mode, which they called “dos compatibility” mode. It was sometimes possible to get an old ornery CD rom to work in dos compatibility mode when no windows drivers were available. In this case, when windows accessed the CD rom, it actually did drop back to dos to do it. For all other system accesses though, windows was the true OS running and it was not making dos calls to access things.
All nt operating systems have what is called the “hardware abstraction layer” or HAL (Mangetout, that’s a good phrase for your boss to google, but I doubt it will change his mind). The HAL is what makes nt operating systems more stable. If a program completely mucks up and tries to whack the system, HAL just says “sorry, I can’t do that Dave” and shuts the offending program down. This is why really bad programs will bring a windows 98 box to its knees, while they will only cause a little popup that says please report this error to microsoft on XP. HAL is also what stops a lot of dos programs from functioning. NT operating systems don’t have a version of dos present. There’s no real “shred” of dos running. HAL takes care of all of the dos function calls, and the “command prompt” is a win32 application.
There is no difference between the HAL on XP home vs. XP pro.
A pox on windows because it doesn’t always support programs that must be 10+ years old? Sheesh, a pox on people who can’t be bothered to upgrade their software! Just how long do you expect the newest technology to be backwards compatible?
I personally expect it to be backwards compatible a heck of a lot longer than microsoft does.
Think of it this way. I have dozens of dos programs I still use, like quicken, for example. Why should I go shell out $50 for a new checkbook program when the one I have does everything I need? I’d be paying $50 to have exactly what I have now, plus I’d have to learn a new interface to it so there’s a time cost as well. Fortunately, this still runs on XP so I don’t have to complain.
I have software which I use to design electronics. This software was made in 1998, so we’re not talking about going all the way back to dos here. The software runs on NT 4 but won’t run on XP. Upgrading it to the version that will run on XP means spending about $10,000 for the software and then spending months learning what is essentially an entirely different design package.
A lot of software I have doesn’t have a version available which works with XP. Upgrading isn’t even an option.
I wouldn’t be able to run about half of the software I use if I did not have a win98 box set up in my home.
For some folks, backwards compatibilty is VERY important. Microsoft and many other folks don’t seem to care about this, which really annoys people like me.
It’s a lost cause, believe me; anything I say on the subject is met with him launching a command window, pointing at the C:\ prompt and saying “see? it’s just DOS underneath - SEE?”
hehe. Does he by any chance have slightly pointy hair?
Give him one of those laptops that you clear the screen by turning it upside down and shaking it.
My son spent 4+ years working on NT (versions 3 and 4) and there is no DOS underneath. There is, of course, the command prompt, which many people, including me, often call DOS, but that is mistaken. He has spent the last 2+ years working on an enhanced command prompt, codenamed monad (this is public knowledge), but I do not think it has enhanced ability to run DOS programs. What it has in it, mainly is an enhanced abiliy for a sysop to run batch files on all the computers he is managing.
Since I do most of my work (reall work, not reading SD) from the command prompt, I use an enhanced shell, 4NT. It is a very nice shell, but I don’t think it changes the underlying capability. My son says most of the 4NT enchancements will be in monad. We will see.
I think I will send the address of this thread to my son and ask if he has any comments.
I was starting towards a dissertation on CIS101, but that’s not necessary. DOS is not a DOS shell!
To simplify the way things used to be:
A program needs to open a file. It asks Windows 3.11. Windows knows enough about opening files to realize it needs to ask DOS. DOS knows how to abstractly ask the FAT for the correct sector address, but doesn’t know how to talk to the hard drive, so DOS uses the BIOS API to finally write to the hard drive. (The BIOS is the basic I/O system. The program that you call the BIOS is just a program to configure the BIOS.) The DOS shell is a separate program that runs other programs that become calls to DOS. This shell is typically called “COMMAND.COM” (or .EXE), and you run other programs like FORMAT.EXE or DIR.COM.
Windows XP, then: A program needs to open a file. It asks Windows XP. Windows XP asks the NT kernel for the file. The NT kernel and/or attached drivers in the kernel know how to talk to the hard drive. (That’s why you don’t have to program sectors and cylinders and other funky stuff into the BIOS any more).
The NT kernel is actually what replaced DOS (I don’t mean that the NT kernel is a DOS replacement; it does much, much more than replace DOS in addition to replacing DOS).
When you use COMMAND.COM (actually, “cmd”) today on XP, you actually are completely emulating DOS, since it simply doesn’t exist.
I’ll reserve HAL’s for a future discourse.
That sounds more like Windows 3.0. Windows 3.1 bypassed the BIOS when running in 386 Enhanced mode, while Windows 3.11’s 32-bit File Access bypassed DOS altogether.