Hi Linda,
Further to my reply about OS/2 and SWAP files the other day, I realised that I
left out some important information that actually may have a marked bearing on
what I have been saying so far.
Under OS/2, REAL memory management is divided up into PAGES. Its been a long
time since I thought about this so I forget most of the details, but I think a
PAGE is quite small, something like 4K (yes, 4096) bytes of memory. When an
OS/2 application runs, it is assigned a number of PAGES of REAL memory to hold
the running program. If OS/2 finds its stock of SPARE REAL memory running out,
then it writes out to the SWAP file as many of the OLDEST USED PAGES that are
required to free up the REAL memory it needs to keep things running.
Actually its even more intelligent than that, if the memory being swapped out
is part of an EXE file that never actually changes while it is in memory, it
doesn't really swap it out, it marks the PAGE as being swapped and then
continues, but when it needs that PAGE in again, it just loads it directly
from the image it stored in the SWAP file that it wrote when the application
was initially loaded! Nifty...
This means that SWAPPING out something does NOT mean the entire application in
memory is swapped out, only the PARTS of it that are not currently being
referenced. Which pages get swapped are determined by several criteria, some
PAGES are marked as NOT SWAPPABLE (EG device drivers are not normally
candidates for being swapped), so they are NEVER swapped to disk.
Just a little bit extra to add to your already overloaded memory.......;-)
Cheers.............pk.
--- Maximus/2 3.01
* Origin: Another Good Point About OS/2 (3:772/1.10)
|