Received: from PACIFIC-CARRIER-ANNEX.MIT.EDU by po7.MIT.EDU (5.61/4.7) id AA15868; Wed, 6 Dec 95 18:50:45 EST
Received: from liquor.cabi.net by MIT.EDU with SMTP
	id AA14779; Wed, 6 Dec 95 18:49:40 EST
Received: (from listadm@localhost) by liquor.cabi.net (8.6.12/8.6.12) id SAA17729; Wed, 6 Dec 1995 18:46:50 -0500
Resent-Date: Wed, 6 Dec 1995 18:46:50 -0500
Date: Wed, 6 Dec 1995 15:39:00 -0800 (PST)
From: Michael Bayne <mbayne@qualcomm.com>
To: Graeme Hiebert <geh@mda.ca>
Cc: java-linux@java.blackdown.org
Subject: Re: Sound in pre2 works (and other status) (fwd)
In-Reply-To: <9512062217.AA11194@mailer.mda.ca>
Message-Id: <Pine.sol.3.91.951206153238.25646B-100000@ginkgo.qualcomm.com>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Resent-Message-Id: <"ZlKNy1.0.VK4.GjYnm"@liquor>
Resent-From: java-linux@java.blackdown.org
X-Mailing-List: <java-linux@java.blackdown.org> archive/latest/648
X-Loop: java-linux@java.blackdown.org
Precedence: list
Resent-Sender: java-linux-request@java.blackdown.org

> While the 1.3 kernels do seem very stable these days - especially in
> comparison to some of the 1.1 kernels - I think it would be a mistake
> to rely on 1.3.  We want to bring Java to the masses, not just to
> the bleeding edgers.  The "official" kernel is 1.2.x, and that should
> be the basis.

Unfortunately, the implications of this matter are far deeper than just 
'opting to use 1.3.x because it's convenient'. Linux 1.2 provides POSIX.1 
functionality. Linux 1.3 (plus libc5.2.x) provides POSIX.4 (or 
POSIX.10??? whatever the new real name is) functionality. POSIX.4 
includes support for a lot of reentrant functions and generally fixes 
(tries to fix) the foolish assumptions in the libc API that prevented 
thread safety (returning pointers to static data being the number one no 
no).

I'm not sure if libc5.2.x can be used with Linux 1.2.x, but trying to 
port Java without the POSIX.4 functionality in libc5.2.x would be an 
extremely painful task. ELF is only a minor stepping stone. Thread-safety 
is the real deciding issue here.

> I really have no clue as to whether kernel threads are The Right Thing.
> If it can work with kernel threads, then go for it, but is still essential
> to keep it 1.2-compatible.

As much as preemptive multitasking is 'The Right Thing' from an operating
systems perspective, kernel threads are 'The Right Thing' (vs. pthreads,
or green threads) from Java's perspective. 

/o)\ mbayne@qualcomm.com
\(o/ e pluribus unix  

