From owner-freebsd-arch Tue Nov 23 4:22: 4 1999 Delivered-To: freebsd-arch@freebsd.org Received: from ns1.yes.no (ns1.yes.no [195.204.136.10]) by hub.freebsd.org (Postfix) with ESMTP id 926E014D0E for ; Tue, 23 Nov 1999 04:21:55 -0800 (PST) (envelope-from eivind@bitbox.follo.net) Received: from bitbox.follo.net (bitbox.follo.net [195.204.143.218]) by ns1.yes.no (8.9.3/8.9.3) with ESMTP id NAA09091 for ; Tue, 23 Nov 1999 13:21:30 +0100 (CET) Received: (from eivind@localhost) by bitbox.follo.net (8.8.8/8.8.6) id NAA25809 for freebsd-arch@freebsd.org; Tue, 23 Nov 1999 13:21:29 +0100 (MET) Received: from pcnet1.pcnet.com (pcnet1.pcnet.com [204.213.232.3]) by hub.freebsd.org (Postfix) with ESMTP id 0411C150AA; Tue, 23 Nov 1999 04:21:17 -0800 (PST) (envelope-from eischen@vigrid.com) Received: (from eischen@localhost) by pcnet1.pcnet.com (8.8.7/PCNet) id HAA07292; Tue, 23 Nov 1999 07:20:01 -0500 (EST) Date: Tue, 23 Nov 1999 07:19:54 -0500 (EST) From: Daniel Eischen To: Chuck Robey Cc: Julian Elischer , Nate Williams , "Daniel M. Eischen" , freebsd-arch@freebsd.org, jasone@freebsd.org Subject: Re: Threads In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-arch@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG On Tue, 23 Nov 1999, Chuck Robey wrote: > It seems to me that we're talking about, basically, changing the scheduler > from being process-centric to being KSE-centric, right? I think that > means that, excepting possible per-process limits, the scheduler wouldn't > care what process was up, and it would be keeping KSE run-lists, > wait-lists, etc, right? I think the sleep queues need to be KSEs, and perhaps someday they'll become per-mutex or condvar queues :-). I think the run queue has to remain process (or kernel thread) oriented. The KSE run-list would be hung off each process. > I'm wondering if there might possibly be some way to preserve some level > of simplicity by keeping ksid'd like we keep pid's now, so that things > that juggle a 32 bit entity keep on doing that, although perhaps under > another name. I think you're basically right in keeping things simple. I think that a non-MT process should be equivalent to a MT process. The non-MT process has only one co-operating process (itself) and one KSE. Whenever the non-MT process blocks in the kernel, there are no more available KSEs, so another process is scheduled. Dan Eischen eischen@vigrid.com To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message