Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 22 Sep 1996 17:42:54 +1000 (EST)
From:      Julian Assange <proff@suburbia.net>
To:        freebsd-hackers@freebsd.org
Subject:   Grand Unified Unix
Message-ID:  <199609220742.RAA15638@suburbia.net>
In-Reply-To: <324492F6.2781E494@whistle.com> from "Julian Elischer" at Sep 21, 96 06:14:30 pm

next in thread | previous in thread | raw e-mail | index | archive | help
> > Perhaps we could set about identifying areas of common interest and
> > open a discussion on mutual development priorities?
> I think that htere are enough ares to keep us busy..
> I'm about to revamp the networking lower end for ATM/Frame/ISDN
> I'll work with anyone who's intersetd..
> I'll be taking the FreeBSD ATM crew the BISDN crew and the
> NetBSD/OPENBSD
> ATM crew's stuff, and our own work here and hopefully drawing a common
> thread through it all.
> 
> I have already got a good commmunication with them
> and hope to expand it..

Here is an idea.. For some time I have been disturbed that there is a
linux/NetKit, FreeBSD, OpenBSD, NetBSD, (etc) version of telnet.c and
that it is slowly diverging. Something like telnet.c has no need to do
this.  It is standard, userland program with using the BSD networking
API and following a very well known RFC. The ineffiencies involved in
having multiple version trees of this sort of code are obvious.

Would it not be possible to create a user-land unification, from those
aspects of unix (BSD) which have, by and large, not devolved? Such an
scheme does not need to be all-encompassing. What is placed within the
GUU (grand-unified-unix) repository is only what the various camps can
agree on. This could apply to kernel sub-trees as well, but to begin
with, surely it would be a relatively easy, and incremental process to
agree that the "cat" command and man-page would be handed over to GUU
repository control.  If at some stage one camp developed a kernel
feature which cat could take advantage of, then there is always the
magic of #ifdef or conditional makefiles. It becomes the responsibility
of the camp adding the new api to:

	#if defined(FreeBSD)>num
	#  define NEWAPI
	#endif

	[...]

	#ifdef NEWAPI
	newcode()
	{
	[...]
	}
	#endif

Meaning that if NEWAPI has found to be a_good_thing (tm), and has
accordingly spread, userland code automatically takes advantage of it
regardless of which OS it is running under (e.g auto autoconf).

The nice thing is, that once GUU is built up, it increases the benefits
of competition, because the difficulty of entering the fray is reduced.
People can produce dedicated (for a particular role, or architecture) or
experimental kernels, using GUU as the "underlying substrate" on which
they are placed. Now this is important, because it makes not only makes
it easy, but *encourages* traditional commercial unix vendors to add
to the GUU tree, evolving it to made use of their compedative
advantages. The value of this should not be underestimated.

Comments?

-- 
"Of all tyrannies a tyranny sincerely  exercised for the good of its victims  
 may be the most  oppressive.  It may be better to live under  robber barons  
 than  under  omnipotent  moral busybodies,  The robber baron's  cruelty may  
 sometimes sleep,  his cupidity may at some point be satiated; but those who  
 torment us for own good  will torment us  without end,  for they do so with 
 the approval of their own conscience."    -   C.S. Lewis, _God in the Dock_ 
+---------------------+--------------------+----------------------------------+
|Julian Assange RSO   | PO Box 2031 BARKER | Secret Analytic Guy Union        |
|proff@suburbia.net   | VIC 3122 AUSTRALIA | finger for PGP key hash ID =     |
|proff@gnu.ai.mit.edu | FAX +61-3-98199066 | 0619737CCC143F6DEA73E27378933690 |
+---------------------+--------------------+----------------------------------+



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199609220742.RAA15638>