multithreaded kernel

Bill Frantz frantz@netcom.com
Thu, 13 Jul 1995 12:04:34 -0800


At 13:54 7/13/95 -0400, Jonathan Shapiro wrote:
>...
>
>As I understand it, the KeyKOS kernel could get into states where it
>didn't have an allocatable frame handy and the page was still hazarded
>by checkpoint.  In such cases, the caller would block until the page
>was unhazarded.  If the page is pinned, it seems to me that such
>blocking needs to be avoided.

Yes - That's why I put in the assertion quoted below.

>
>Another way to look at the whole issue is to think of such pages as
>being checkpointed at a different (infinitely slow) rate from the rest
>of the machine.
>
>   For pinned pages, you would have to ensure that a free page was
>   available.  At a minimum you would have to ensure that, at all
>   times, the number of unchanged unpinned pages in the system was
>   greater than the number of pinned R/W pages.
>
>In EROS it may be worse than that.  One of the things that was lost
>when I gave up key chains was any straightforward way to forcibly
>reclaim a page other than by running the page ageing strategy.

Perhaps you will be forced to allocate 2 core frames for each pinned page. 
If you get backed into that corner, then pinned/non-checkpointed pages
become much more interesting.  However, you probably need some mechanism to
notify a domain which trys to use the data in such a page that the data has
been lost.


-----------------------------------------------------------------
Bill Frantz                   Periwinkle  --  Computer Consulting
(408)356-8506                 16345 Englewood Ave.
frantz@netcom.com             Los Gatos, CA 95032, USA