From owner-freebsd-java Tue Mar 6 11:11:53 2001 Delivered-To: freebsd-java@freebsd.org Received: from ns.yogotech.com (ns.yogotech.com [206.127.123.66]) by hub.freebsd.org (Postfix) with ESMTP id 8EBD537B718 for ; Tue, 6 Mar 2001 11:11:50 -0800 (PST) (envelope-from nate@yogotech.com) Received: from nomad.yogotech.com (nomad.yogotech.com [206.127.123.131]) by ns.yogotech.com (8.9.3/8.9.3) with ESMTP id MAA10185; Tue, 6 Mar 2001 12:11:39 -0700 (MST) (envelope-from nate@nomad.yogotech.com) Received: (from nate@localhost) by nomad.yogotech.com (8.8.8/8.8.8) id MAA12841; Tue, 6 Mar 2001 12:11:38 -0700 (MST) (envelope-from nate) From: Nate Williams MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <15013.13929.646718.255566@nomad.yogotech.com> Date: Tue, 6 Mar 2001 12:11:37 -0700 (MST) To: Daniel Eischen Cc: Nate Williams , java@FreeBSD.ORG Subject: Re: Java and libc/libpthread In-Reply-To: References: <15013.11891.57267.160163@nomad.yogotech.com> X-Mailer: VM 6.75 under 21.1 (patch 12) "Channel Islands" XEmacs Lucid Reply-To: nate@yogotech.com (Nate Williams) Sender: owner-freebsd-java@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org > > > > > I'm currently working on an NxN libpthread implementation as > > > > > an interim solution until we get KSEs. The goal is to get > > > > > this done before 5.0. > > > > > > > > How is this different from the current implementation? > > > > > > File descriptors will not be made non-blocking like they are > > > currently in libc_r. When a thread blocks on I/O, it _really_ > > > blocks -- no other threads will be scheduled within that > > > [rfork_thread'd/cloned] process. > > > > So, reversing the logic ('not be made non-blocking'), file descriptors > > will be made blocking? > > Right, err, well, they're whatever the application decides to set > them to. > > > This doesn't seem like progress, but I may not > > understand the implications. > > Some folks find that our libc_r doesn't scale very well for their > applications and that linuxthreads (under Linux) perform much, > much, better. For file-descriptors that *must* block (ie; reading from stdin, or other non-deterministic desciptors), LinuxThreads scales much better. > libc_r will still be around for folks to use; this will be a separate > library (libpthread). Gotcha. > Solaris 8 provides /usr/lib/lwp/libpthread that provides (by > default) a library tailored for NxN. They (Sun) found that it > performed better for Java threads. Java doesn't give the author any control over the thread creation/removal or scope, so the overhead of MxN model is useless for Java. > > So, you're going to create a system similar to Linux-threads, but with a > > more BSD-like license? > > Right. Wonderful! Nate To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-java" in the body of the message