From: utzoo!decvax!harpo!seismo!hao!hplabs!sri-unix!obrien@Rand-Unix
Newsgroups: net.unix-wizards
Title: Re: protecting kmem because someone felt obnoxious.
Article-I.D.: sri-unix.4980
Posted: Thu Dec 30 13:42:46 1982
Received: Sat Jan  1 02:05:26 1983

Date: Tuesday, 28 Dec 1982 09:56-PST
At Harvard, according to Bruce Borden, they got around the problem
by installing a "table" system call.  I can't think of a single program that
really wants to look at kernel memory for more than just a table of
something-or-other, such as the file table, inode table, proc table, coremap
table, etc.  We installed one here under V6 UNIX and were quite happy.

	Table takes two arguments: an index for what table to grab, and
an address in user space to put the table.  If the second arg is NULL,
the call stuffs nothing, but returns as a value the length of the table,
so the user process can allocate memory for it.

	Works quite well, and much neater than looking up symbols in
/frobunix.  A header file ties index numbers to symbolic table names.
Once it's set up it doesn't matter what you do to the kernel, or where the
running version of UNIX is in the file system: tables stay tied to their
indices.  The only time you have to change the call is when you install a
whole new kernel table that some user process has to look at.  It should be
pretty obvious that the required change in such a case is trivial.