More stuff for LispOS

Marcus G. Daniels marcus@cathcart.sysc.pdx.edu
15 Jul 1997 18:33:11 -0700


>>>>> "DH" == Dwight Hughes <dwighth@intellinet.com> writes:

DH> Would you care to comment on your experiences with Hurd in doing
DH> this?  I know it has been proposed several times as a possible
DH> starting base for LispOS. Your thoughts?

As far as Unix portability is concerned, the Hurd with the GNU C
library is pretty much like GNU/Linux (and now, most of the Linux-based
systems are moving to `libc6', aka, the GNU C library).

Stability-wise, there are still significant bugs lurking.  Building
X11, for example, is usually enough to crash Hurd.  One nice feature of
Hurd is that you can start up a second Hurd to see why the first one
died.  While I've not seen the whole microkernel go poof, then I'm not
always running with two Hurds, and not always around to see a crash so
based on my experiences it is difficult for me to say that this
doesn't happen, and that crashes can always be investigated by using
two Hurds.

Performance-wise, Hurd seems slower than Linux.  FWIW, a Pentium
running Hurd still seems a lot faster than a 486.

As for the features that Hurd and Mach provide that may be useful
for a LispOS, two obvious ones that I see are:

  o External paging.  The ability add attributes to a chunk
    of memory and have the custom pager do useful things with them.
    Hurd has some library support for implementing external pagers.

  o Implement a traditional filesystem using a Lisp implementation.
    With Hurd, filesystems are implemented as ordinary programs
    called `translators', and a Lisp implementation could be used
    to implement them.  Similarly, the /dev interface is implemented
    using a user level program, as are psuedo terminals, and network
    protocols.