Article View: alt.msdos.programmer
Article #610QEMM/386
From: Jeff Silverman
Date: Mon, 09 Nov 1992 05:44
Date: Mon, 09 Nov 1992 05:44
32 lines
2062 bytes
2062 bytes
I am a VAX/VMS guru in the process of becoming an MS-DOS guru. If these questions sound naive, it is because I am coming at these from a strange perspective. In the VAX/VMS operating system, programs execute in their own virtual address space, which gets mapped on a page by page basis into physical memory. 2 VMS programs can be running at the same virtual address yet address different pages of physical memory, because the mapping is done on a per-process basis and the OS handles all that transparently. The programmer sees 1, big pool of RAM. What does QEMM/386 do, from a programmers point of view? It appears to move things around in both physical and virtual memory. How is this possible? If something, say, a TSR, is moved out of low memory and into either High Memory (By high memory, I mean the region between 640K and 1 Mbyte) or extended memory, how does it keep working? All of the destinations for jump instructions would change. Or does the 80386 have additional memory relocation? How does QuarterDeck's OPTIMIZE program work? Please don't say it works well, I KNOW it works well, I've been playing with it, I can see that it works, but don't know what it's doing or how it does it. Well, I do know what its doing, it's modifying CONFIG.SYS to free up more RAM in the lower 640K region. Why does DOS have a 640Kbyte limit? Why would anybody ever want to use expanded RAM if extended RAM is available? If I have a "C" program which runs properly under VMS, but needs, say, 3 Mbytes of RAM to store all its data structures, what is the best way to run it under DOS? Under Windows? Sincerely yours Jeff Silverman, Boeing.
Technical Details
Message-ID:
<4141@bcstec.ca.boeing.com>Path:
arc1-ca.pugleaf.net!sparky!uunet!bcstec!silvermShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!sparky!uunet!bcstec!silverm From: silverm@bcstec.ca.boeing.com (Jeff Silverman) Newsgroups: alt.msdos.programmer Subject: QEMM/386 Summary: What is QEMM 386 actually doing and how does it do it? Keywords: QEMM memory management 80386 Message-ID: <4141@bcstec.ca.boeing.com> Date: 9 Nov 92 05:44:05 GMT Organization: Boeing Computer Services, Seattle Lines: 36