From: hedrick@geneva.rutgers.edu (Charles Hedrick)
Newsgroups: comp.os.linux
Subject: Re: 386BSD vs Linux
Date: 3 Oct 92 07:38:23 GMT
Organization: Rutgers Univ., New Brunswick, N.J.

alovell@kerberos.demon.co.uk (Anthony Lovell) writes:

>Most comparisons of Linux and 386BSD get quite heated

I think there are some things one can say with reasonble objectivity:

Linux has a reputation for taking less disk space.  This seems to be
for three reasons:

 - shared libraries cause it to use less space for given functionality
 - 386BSD's basic distribution comes in large chunks, which require 
	lots of additional disk space to unpack
 - Linux has a comparatively small base distribution, after which
	people tend to collect just what they need

Note that the last two things have two sides to them.  While 386BSD's
distributions structure tends to use more disk space, it's also
generally considered to be easier to make sense of.  Newcomers tend to
be intimidated by a Linux archive site like tsx-11, where there are a
zillion separate packages, each with different structures, of
different ages.

386BSD is ahead in networking, at least for Ethernet.  It has the full
Berkeley networking code, plus NFS.  Linux' network code is still new,
so not as much software has been ported, and much of it is still in
the early stages of testing.  There is no NFS client code yet, and
even the NFS server is user-mode.  The advantage is not so clear for
SLIP.  While 386BSD's general network code is in better shape, its
serial driver drops characters.  Thus SLIP is slower because of
dropped packets, and creates lots of error messages on the console.
There are people working on this, and solutions are probably known,
but so far I haven't seen anything in the newsgroup to suggest that a
fixed version is generally available.

The most basic difference is that the underlying technology is
different.  This affects the overall flavor of the software, what
software is likely to be portable to it, etc.  This is likely to be
the longest-lasting difference, since missing features and bugs are
likely to be fixed on both sides.  Linux is basically POSIX, with Gnu
utilities (which are intended to be POSIX-compatible).  386BSD is
basically Berkeley Unix.  There's a large base of software written for
or ported to BSD, which is presumably usable on 386BSD.  There are
very few existing systems that are pure POSIX.  Generally POSIX is
added on to either Berkeley or System 5.  Linux is one of the first
systems that started as POSIX.  Thus there isn't much software written
for pure POSIX.  This could cause problems porting software into
Linux.  However over the last few months a good deal of BSD and System
5 compatiblity features have been added to Linux, so in practice
portability is fairly good.  In some sense Linux may be better to port
software out of, and 386BSD may be better to port software into.  That
is, if you are starting a new package, writing it on Linux is likely
to be a good strategy, since most future systems will be
POSIX-compatible.  If you want to bring older packages onto your
system, 386BSD may be easier in some cases.

Depending upon why you want to use Unix, you may prefer either BSD or
POSIX.  For people learning Unix, there's something to be said for
starting with a POSIX system, since that's the direction in which
standards are moving.  However Berkeley invented lots of interesting
technology, so for someone who wants to learn about modern operating
systems, the Fast File System, Berkeley networking, etc., are
certainly interesting to look at.

As for the specific questions, space requirements are much less for
Linux.  Neither system is very good about supporting tape drives, and
my guess is that as tape support starts showing up, it will be adapted
to both systems.  The same basic X software is used on both systems.
One may be a bit ahead or behind at any given moment, but in the long
run you'd expect them to support the same cards.  I believe X takes
much less disk space on Linux though.  I have a fairly complete X
online in about 14MB.  This includes all the standard and demo
executables, the libraries, man pages for programs and subroutines,
and a fairly complete set of fonts (but just 75 dpi -- a full
distribution has both 75 and 100).  It does not include the linkkit
for building new X servers, but does have the necessary tools for
building other X software.  This is a surprisingly small amount of
disk space for X.  A minimal useful system can be done in something
like 5 MB.  It would consist of just the server and a few basic client
programs, and a minimal set of fonts.

I've heard some suggestions that Linux performs better, particularly
on system with minimal resources.  This is believable, since Linux was
designed for the 386, whereas 386BSD is a port of a generic system.  I
haven't seen the results of any careful tests, so I'd take this with a
grain of salt.  I have both systems on my machine (which is a 486/33),
and Linux "feels" slightly faster.  But this is a superficial
impression which is probably due just to differences in the console
driver.  It's not based on experience with substantial applications.
386BSD would be likely to have better disk throughput, since it is
heir to the extensive Berkeley work on the file system.  Again, this
is a guess, as I haven't seen benchmark results.  The Linux file
system is being redesigned, and the next incarnation may well use many
of the same strategies as BSD.

One thing I have to say for Linux: It's remarkably free of politics.
The Gnu people argue over the Gnu manifesto.  The BSD newsgroup is
half taken up with discussions of patent policies and the
personalities of prominent members of the community.  So far Linux has
remained fairly free of that.  Linux is ruled by a benevolent
dictator, who is too young to have made any enemies yet...  (This
comment refers only to kernel.  In fact one of hallmarks of Linux is
that it is a highly distributed project.  However so far Linus has
maintained control over what goes into the kernel.  I think that's a
good thing.)