rpk@wheaties.ai.mit.edu (Robert Krajewski) (08/08/90)
Umm, I thought that if you were running Windows in enhanced mode, it implemented DOS compatiblity by using the V86 mode of the 386 (and newer) processors. Doesn't that mode allow you to: 1. Put the 1M address space of the V86 inside a virtual memory system 2. Map various segments of memory of the V86 machine in such a way that the task is unaware that it might be use sharing what it thinks are well-known hardware resources, like the display adapter, etc. So, running DOS apps in enhanced mode should not require significant (> 100k) regions of contiguous memory. I'm not sure how much Windows exploits these capabilities; it seems like you should be able to share DOS and the BIOS to a certain extent, and thus free up memory in the DOS boxes. However, Windows is supposed to run with a variety of OEM DOSes and BIOSes, so Microsoft probably doesn't do all that it can to be clever. -- Robert P. Krajewski Internet: rpk@ai.mit.edu ; Lotus: robert_krajewski.lotus@crd.dnet.lotus.com
jls@hsv3.UUCP (James Seidman) (08/08/90)
In article <9755@rice-chex.ai.mit.edu> rpk@wheaties.ai.mit.edu (Robert Krajewski) writes: >Umm, I thought that if you were running Windows in enhanced mode, >it implemented DOS compatiblity by using the V86 mode of the >386 (and newer) processors. Doesn't that mode allow you to: >1. Put the 1M address space of the V86 inside a virtual memory system >2. Map various segments of memory of the V86 machine in such a way >that the task is unaware that it might be use sharing what it thinks >are well-known hardware resources, like the display adapter, etc. >So, running DOS apps in enhanced mode should not require significant (> >100k) regions of contiguous memory. Yes, Windows 3.0 does all of these. In fact, I was having some trouble with it because it cleverly shares memory allocated before you start Windows between all of the DOS sessions. I had CED (which is a command line editing program like NDOSEDIT) installed, and I would quite often get "Memory allocation error, cannot load COMMAND.COM" errors when I had multiple DOS sessions. When I realized that a command I typed in one session would be in the command history for all the others, I figured out what was going on. >I'm not sure how much Windows exploits these capabilities; it seems >like you should be able to share DOS and the BIOS to a certain extent, >and thus free up memory in the DOS boxes. However, Windows is >supposed to run with a variety of OEM DOSes and BIOSes, so Microsoft >probably doesn't do all that it can to be clever. It still does most of what it can to be clever, assuming that the DOSes and BIOSes will meet up to their specifications. In fact, I have seen many problems which arise from Windows' cleverness in trying to save memory and virtualize resources. However, we manufacturers just have the choice of convincing Microsoft to change (which is hard... they're bigger than we are :) or redoing our stuff to make it work. -- Jim Seidman (Drax), the accidental engineer. UUCP: ames!vsi1!hsv3!jls ARPA: hsv3!jls@apple.com