On Jan 23, 2008, at 4:27 PM, David Brodbeck wrote:
On Jan 22, 2008, at 8:54 PM, Rick Thomas wrote:
The rule of thumb comes from UNIX days (BSD and even before that
with AT&T UNIX). In order to be completely sure you would be able
to swap out a program when memory became full, UNIX allocated a
page of swap for every page of virtual memory a program occupied.
So if vi required 256K to run, there was 256K of swap space
allocated to it. The 2 to 1 ratio came from the observation that
a busy UNIX time-sharing system with lots of users ran most of
it's time with half the users doing something that required CPU/
memory resources and the other half thinking, so you could afford
to overcommit memory by a factor of two.
Thanks for the interesting history lesson. :)
You're welcome. It had the interesting side-effect that people
developed the habit, after they were done thinking and wanted to
start working on the computer again, of hitting the <return> key to
"wake up the computer" (really, to initiate a bunch of swap-in
operations) then wait several seconds for the cursor to actually
return and the command prompt to re-appear. The swapping algorithms
knew about this behavior and optimized for it. When a process group
had been idle long enough to indicate the start of a "think" cycle,
the whole process group was swapped out at once. When the user
started up again, the whole process group was swapped in -- assuming
that the user would be needing it soon.
I'm really gettin' old!
Rick
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]