🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.unix.sysv286
Article #127

Re: Kernel Definition

#127
From: Richard M. Mathews
Date: Wed, 29 May 1991 20:14
29 lines
2159 bytes
jfh@rpp386.cactus.org (John F Haugh II) writes:

>The AIX v3 kernel is pagable.

And AIX V3 isn't the only pagable Unix kernel, and I suspect this is going
to get common soon.

This is wandering off the subject a bit, but I thought I'd mention some
of the fun involved in making Unix pagable since it sounds like most of
the "wizards" out there haven't played with this at all.  There are
many, many places where Unix kernel code assumes that there are only
3 ways that something can magically change: an interrupt can change
things; hardware registers can change; and anything can change if we
allow a context switch.  If you know that the first 2 don't happen or
are irrelevant, then all you have to do is avoid calling swtch() (or
something that calls it, most obviously sleep()); and then you know
that you have complete control.  If, however, you can take page faults
in the kernel, then you can get context switched on any line of code.
You better hunt out each place where such assumptions are made, and
either temporarily pin down the pages you need or get a lock for the
appropiate resource.  And then you better think about deadlock and
performance implications of keeping things pinned or locked.  It's a
lot of fun!  Note, by the way, that the work to make a kernel pagable
is similar to the work needed to make it work with multiple processors.

Richard M. Mathews			 Freedom for Lithuania
richard@locus.com				Laisve!
lcc!richard@seas.ucla.edu
...!{uunet|ucla-se|turnkey}!lcc!richard
Technical Details
Message-ID: <1991May29.201432.1803695@locus.com>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!think.com!zaphod.mps.ohio-state.edu!swrinde!elroy.jpl.nasa.gov!decwrl!mejac!orchard.la.locus.com!fafnir.la.locus.com!richard
References: <1423@necis.UUCP> <1991May24.065316.27331@thunder.mcrcim.mcgill.edu> <19332@rpp386.cactus.org>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!think.com!zaphod.mps.ohio-state.edu!swrinde!elroy.jpl.nasa.gov!decwrl!mejac!orchard.la.locus.com!fafnir.la.locus.com!richard
From: richard@locus.com (Richard M. Mathews)
Newsgroups: comp.unix.sysv286,comp.unix.sysv386,comp.unix.xenix.misc,comp.unix.xenix.sco,comp.unix.wizards
Subject: Re: Kernel Definition
Message-ID: <1991May29.201432.1803695@locus.com>
Date: 29 May 91 20:14:32 GMT
References: <1423@necis.UUCP> <1991May24.065316.27331@thunder.mcrcim.mcgill.edu> <19332@rpp386.cactus.org>
Organization: Locus Computing Corporation, Los Angeles, California
Lines: 29