[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Glibc-based Debian GNU/KNetBSD



On Tue, Dec 02, 2003 at 01:52:01AM +0100, Robert Millan wrote:
> On Mon, Dec 01, 2003 at 06:00:06PM -0500, Perry E.Metzger wrote:
> > As I said, though, it is likely that the NetBSD folks would happily
> > add needed stuff from glibc to the netbsd libc. I mean, who wants to
> > have a libc that won't run popular third party apps? Of course we'd be
> > amenable.
> 
> Please avoid the "third party" euphemism. If you want to run non-free software
> on a Glibc-based system, you can use the NetBSD libc since it's no technical
> problem to provide it as alternative (ala Linux libc5)

He's referring to source compatibility. On BSD's, third party seems to
mostly mean just about anything not in the base system. NetBSD has
binary emulation for Linux. That takes care of the non-free stuff, since
that's far more available on Linux than for NetBSD.

What he's offering is to look at patches that bring NetBSD's libc into
source compatibility with glibc.

> > You aren't listening. The threads stuff is not kids play.
> > [...]
> 
> The threads stuff is not as relevant nor as complicated as you pretend. I've
> been working with libpth (and so has the NetBSD 1.6 libc based port) and
> haven't found any incompatibility yet. At some point we'll study which of
> porting NPTL or porting the pthreads from NetBSD's libc is a more viable
> option.

No, _you_ are underestimating the complexities. There is a very large
difference between something like libpth or linuxthreads (which are
either entirely based in userspace, or require minimal support from the
kernel), and the very kernel-specific implementations being used in
NPTL, FreeBSD's libkse or NetBSD's libpthreads. The newer threads
packages are targeting drastic improvements in performance, Posix
compliance, stability, and scalability. And from what I understand,
they're getting them.

Unfortunately, those gains come at the expense of dramatically more
complex and incompatible kernel support. And the BSD mechanisms aren't
much like the ones Linux uses.

There's some useful documentation on how threads work on FreeBSD here:
http://www.freebsd.org/kse/

And there's a pretty good paper about NetBSD threads here:
http://web.mit.edu/nathanw/www/usenix/freenix-sa/freenix-sa.html

I'm sure others can provide more or better references.

	---Nathan



Reply to: