Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10.2 9/17/84; site opus.UUCP
Path: utzoo!linus!philabs!cmcl2!seismo!hao!cires!nbires!opus!rcd
From: rcd@opus.UUCP (Dick Dunn)
Newsgroups: net.arch,net.unix-wizards
Subject: page-up problem/question
Message-ID: <895@opus.UUCP>
Date: Fri, 12-Oct-84 04:40:47 EDT
Article-I.D.: opus.895
Posted: Fri Oct 12 04:40:47 1984
Date-Received: Sat, 13-Oct-84 06:41:49 EDT
Distribution: net
Organization: NBI,Inc, Boulder CO
Lines: 22

By "page-up", I mean the process of getting the initial chunk of pages
loaded for a program to do useful work in a demand-paged system.  If you
have any good direct info on this, I'd like to see it and it might be of
sufficient general interest to post it.  If you have references, please
mail them to me and I'll try to chase them and summarize.

A little more on the nature of the problem:  When starting a program which
is demand-paged, the obvious (but naive) approach is to load the page
containing the starting address and begin execution.  From there, it will
page-fault itself up to a reasonable set of useful pages.  However, the
page up happens in a somewhat haphazard fashion, particularly with programs
which have large collections of utility routines.  It's somewhat as if the
program were being swapped in in near-entirety, except that the pages are
being loaded in a rather random pattern.  This can be waved away in a big
system with fast disks, many users, and a fair number of commonly-used
programs with shared code space.  However, it hurts a lot on a small,
single-user system with a slow disk.  Obviously, if the program is below a
certain size threshold it's better to swap in the whole thing and save the
disk seek time.  Other than this--Any thoughts?
-- 
Dick Dunn	{hao,ucbvax,allegra}!nbires!rcd		(303)444-5710 x3086
   ...Relax...don't worry...have a homebrew.