[Date Prev][Date Next][Subject Prev][Subject Next][ Date Index][ Subject Index]

Re: RE Which Computer



** Reply to message from "Patricia M. Godfrey"  on Sat, 08
Oct 2005 17:37:28 -0400


>> The reason dBase and XyWrite occupy the same memory addresses in a MEM
>> report is that they are running in different VDMs. The first
>> executable would always launch at the same memory address in any VDM,
>> assuming identical CONFIG & AUTOEXEC.>>

> Huh? Sorry, I cannot follow that.... (e.g., if there are two VDMs, are they
> using the same block of "lower" 640 K RAM? Interleaving it, maybe? What
> CONFIG.SYS and AUTOEXEC.BAT? Win 98 has neither

The problem here is the widespread notion that 9x runs on top of "real DOS".
That may be true in some respect, but that top-level session of DOS is one you
never see. What you do see are individual programs running each in its own
"virtual machine". A virtual machine (VM) is an environment in memory that,
from the application's perspective, looks as if it is a separate computer,
complete with all the resources available on the physical computer that an
application needs to run -- a separate session of DOS, if you will. This is
really not much different from DOS apps run under NT, except that in NT, each
session is isolated and protected from all the other sessions (a crash in one
doesn't affect any other session). By "CONFIG & AUTOEXEC", I simply mean
"initialization": you are *not* launching these programs in MS-DOS Mode,
therefore the same base drivers are loaded into each VM, and therefore each
"program" (each executable) starts at the same memory location in its
*separate* VM. Consider: if you ran programs in "MS-DOS mode", they could
indeed have different CONFIGs and AUTOEXECs -- and in that (unusual) case the
initial memory locations for the first executable could be very different; but
you were pointing out that "the SAME 'memory addresses' were reported 'in use'
by different apps", and the reason is identical initialization of separate VMs,
i.e. they are NOT running in MS-DOS mode, so they are all initialized
identically. Make sense?

-----------------------------
Robert Holmgren
holmgren@xxxxxxxx
-----------------------------