From owner-freebsd-arch Fri Dec 13 10:36:35 2002 Delivered-To: freebsd-arch@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D6C1137B401 for ; Fri, 13 Dec 2002 10:36:34 -0800 (PST) Received: from alpha.yumyumyum.org (dsl092-171-091.wdc1.dsl.speakeasy.net [66.92.171.91]) by mx1.FreeBSD.org (Postfix) with ESMTP id 33B7443EC2 for ; Fri, 13 Dec 2002 10:36:28 -0800 (PST) (envelope-from culverk@yumyumyum.org) Received: from alpha.yumyumyum.org (localhost [127.0.0.1]) by alpha.yumyumyum.org (8.12.6/8.12.6) with ESMTP id gBDIZSFw031791; Fri, 13 Dec 2002 13:35:29 -0500 (EST) (envelope-from culverk@yumyumyum.org) Received: from localhost (culverk@localhost) by alpha.yumyumyum.org (8.12.6/8.12.6/Submit) with ESMTP id gBDIZSOE031788; Fri, 13 Dec 2002 13:35:28 -0500 (EST) (envelope-from culverk@yumyumyum.org) X-Authentication-Warning: alpha.yumyumyum.org: culverk owned process doing -bs Date: Fri, 13 Dec 2002 13:35:28 -0500 (EST) From: Kenneth Culver To: Nathan Arun Cc: arch@FreeBSD.ORG Subject: Re: Threads in FreeBSD In-Reply-To: Message-ID: <20021213133306.U31761-100000@alpha.yumyumyum.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Spam-Status: No, hits=-1.2 required=5.0 tests=IN_REP_TO,X_AUTH_WARNING,NO_MX_FOR_FROM,AWL version=2.31 Sender: owner-freebsd-arch@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG > I'm currently reading the book "Modern Operating Systems" by Tanenbaum, > where he says there are 2 kinds of threads. user-level and kernel-level. > What type of threads is implemented in FreeBSD? user, kernel or both? FreeBSD-STABLE's threads are currently totally in userland. FreeBSD-CURRENT's threads will eventually be a sort of a hybrid design, with kernel support for multiple threads so that different parts of the kernel, and different userland threads can be run on different processors. The FreeBSD implementation in -CURRENT is similar to the Scheduler Activation method. The thread scheduler is in userland with an upcall into the kernel that can cause threads to be scheduled across multiple processors. I'm not sure that's quite working yet, but work is progressing in -CURRENT, and from what I hear, should be ready in time for 5.1-RELEASE Ken To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message