🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: mod.os
Article #22

Re: kernel servers vs. user servers.

#22
From: darrell
Date: Sat, 17 Jan 1987 18:43
59 lines
2939 bytes
--

[To moderator: I'm sending this again.  It didn't seem to make it the
first time. -avd]

---------------------Reply to mail dated 13-JAN-1987 05:03---------------------

> Alternatively, does it matter?  It's all very well to say that your file
> system is in a user-state server rather than in your kernel, but your users
> are probably just as dependent on every little detail being right.  To make
> user-state servers more than an irrelevant implementation detail, the user
> must be offered a choice of servers AND IT MUST BE EASY TO WRITE A SERVER!
> Or at least, not impossibly hard.  If writing a server is as touchy a job
> as writing the equivalent inside the kernel, the wonderful flexibility will
> get little use. 

I agree.  For my master's project I wrote a distributed file
system for 4.2BSD VAX/UNIX.  All of the important code for
the distributed file system was done in the kernel.
Unfortunately, I was only able to bring the file system up
on four VAXen.  If I had designed the distributed file
system so that a user-level server could have been written
for *any* BSD-like UNIX system, I could have had my project
on all the machines in the College of Engineering -- the
VAXen plus over 30 SUNs!

Also, debugging the kernel had to be done late at night when
nobody in their right mind should have been awake!  If I had
user-level servers to debug, I could have done it during the
day.  Ugh.  Also, crashes of my file system meant a reboot
of the machine, and crashes of a user-level server simply
mean remote file access would be down for a while.

However, the performance of my distributed file system was
extremely good.  I think it had about twice the throughput
of SUN's NFS.

I guess the main reason I designed my distributed file
system in the kernel was to ensure that existing binaries
did not have to be recompiled to take advantage of remote
access.  I don't think this is possible with user-level
servers, is it?  If it is, could you please direct me to
technical information about how this is/was/could be done?
I would be very interested.

Anthony Discolo
-----
Anthony Discolo
+---+---+---+---+---+---+---+
| d | i | g | i | t | a | l |
+---+---+---+---+---+---+---+
Database Systems Group
301 Rockrimmon Blvd. South
Mailstop CX01-2/N23
Colorado Springs, CO  80919
UUCP: ucbvax!decwrl!fastdb.DEC!discolo
ARPA: fastdb.DEC!discolo@decwrl.DEC.COM

--
Technical Details
Message-ID: <2479@sdcsvax.UCSD.EDU>
Path: arc1-ca.pugleaf.net!utzoo!watmath!clyde!rutgers!ames!ucbcad!ucbvax!sdcsvax!darrell

Show Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: arc1-ca.pugleaf.net!utzoo!watmath!clyde!rutgers!ames!ucbcad!ucbvax!sdcsvax!darrell
From: darrell@sdcsvax.UUCP
Newsgroups: mod.os
Subject: Re: kernel servers vs. user servers.
Message-ID: <2479@sdcsvax.UCSD.EDU>
Date: Sat, 17-Jan-87 13:43:00 EST
Article-I.D.: sdcsvax.2479
Posted: Sat Jan 17 13:43:00 1987
Date-Received: Sat, 17-Jan-87 23:49:50 EST
Organization: University of California, San Diego
Lines: 59
Approved: mod-os@sdcsvax.uucp