From owner-freebsd-arch Sat Nov 20 18:24:12 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 03DDE1576E for ; Sat, 20 Nov 1999 18:24:02 -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 DAA22209 for ; Sun, 21 Nov 1999 03:24:01 +0100 (CET) Received: (from eivind@localhost) by bitbox.follo.net (8.8.8/8.8.6) id DAA11672 for freebsd-arch@freebsd.org; Sun, 21 Nov 1999 03:23:59 +0100 (MET) Received: from alpo.whistle.com (alpo.whistle.com [207.76.204.38]) by hub.freebsd.org (Postfix) with ESMTP id 4A1E91577C; Sat, 20 Nov 1999 18:22:06 -0800 (PST) (envelope-from julian@whistle.com) Received: from current1.whiste.com (current1.whistle.com [207.76.205.22]) by alpo.whistle.com (8.9.1a/8.9.1) with ESMTP id SAA33286; Sat, 20 Nov 1999 18:21:56 -0800 (PST) Date: Sat, 20 Nov 1999 18:21:56 -0800 (PST) From: Julian Elischer To: Matthew Jacob Cc: "Jordan K. Hubbard" , committers@freebsd.org, freebsd-arch@freebsd.org Subject: Re: Core responsibilities [was Re: PHK: "Shut up and go away quietly"] 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 Sat, 20 Nov 1999, Matthew Jacob wrote: > > Actually, to be fair about this, Julian *did* announce to all and sundry > that there would be a discussion about threads. I lurked and followed it > from a distance throughout the week or so it was active. Since it didn't > really touch that much on kernel threads, I didn't have a great amount of > interest in leaping in (the last time I did user level thread work was in > helping Nawaf polish off/disagree with some Posix stuff multi years ago > wrt signal handling). > > It did seem that the discussion was productive, but since it wasn't really > my table, I didn't get involved. Now, if there's some talk about kernel > threads, or more precisely, how a fully threaded kernel will need changes > to the device I/O model, then I'm more interested. That's peculiar because teh first week was just discussing the goals. from there we got to the fact that we need the following kernel support. 1/ KSE's (kernel schedulable Entities that are separate from processes). 2/ SUB-processes. (each with ONE OR MORE KSEs) 3/ Processes (each with one or more Sub processes) 4/ A second call-gate to implement the syscalls that are changed 5/ A different syscall protocol (using #4) to implement the fact that all IO becomes Async in a thread setting, and to return control to the (User level) Thread Scheduler (UTS) when a KSE blocks. 6/ A manner of returnig to the UTS after the subprocess is rescheduled after a process preemption rather than returning to the thread that was pre-empted. 7/ A method for treating a pagefault as a blocking IO and returning to the UTS when a thread get's a pagefault. 7A/ A method of ensuring the UTS doesnt activate #7 if IT blocks. 8/ A method of delivering a signal to the UTS rathe than to any randomly running thread, and letting it decide which thread should handle it. (7 and 8 are related) The discussion has basically stopped the last 6 days as everyone has been busy but I was getting ready to post some stuff tonight. Julian To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message