From owner-freebsd-arch Sat Nov 27 14:39:36 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 8BB3714BDC for ; Sat, 27 Nov 1999 14:39:31 -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 XAA13010 for ; Sat, 27 Nov 1999 23:39:30 +0100 (CET) Received: (from eivind@localhost) by bitbox.follo.net (8.8.8/8.8.6) id XAA54840 for freebsd-arch@freebsd.org; Sat, 27 Nov 1999 23:39:29 +0100 (MET) Received: from io.yi.org (24.66.174.118.bc.wave.home.com [24.66.174.118]) by hub.freebsd.org (Postfix) with ESMTP id 0185A14BDC for ; Sat, 27 Nov 1999 14:39:03 -0800 (PST) (envelope-from jburkhol@home.com) Received: from io.yi.org (localhost [127.0.0.1]) by io.yi.org (Postfix) with ESMTP id 22A511FCF; Sat, 27 Nov 1999 14:39:09 -0800 (PST) X-Mailer: exmh version 2.1.1 10/15/1999 To: "Daniel M. Eischen" Cc: Julian Elischer , arch@freebsd.org Subject: Re: Threads stuff In-reply-to: Your message of "Sat, 27 Nov 1999 06:40:36 EST." <383FC334.F96FDAB1@vigrid.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Sat, 27 Nov 1999 14:39:08 -0800 From: Jake Burkholder Message-Id: <19991127223909.22A511FCF@io.yi.org> Sender: owner-freebsd-arch@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG > Julian Elischer wrote: > > > > ok well I'm only sketching out one solutionso don't feel that ai'm > > bullying you into anything.. > > > > in this scheme however there is nothing to say that we can't keep track of > > time spent in IO. > > As long as the UTS was informed of the time spent in the kernel (I suppose > via the IO control block?) for each KSE, then that would probably be good > enough. I've put a diagram up on my web page that tries to incorporate some of these ideas. I haven't included the queue-ing, because that seems basically agreed upon. http://24.66.174.118/ Both a gif and the tgif obj file are there. I hope its not confusing. The arrows are meant trace the path that the scheduler and a thread making a blocking or non-blocking system call might take, and the ellipses are states I guess. I'm just going from what Daniel said about libc_r having to get the time of day and set the interval timer in order to do a context switch, which can probably be done in one system call. Either the context can be saved in userland, in which case the scheduler returns normally, and does a longjmp or the equivalent, or the thread could be resumed as part of the system call. Let me know what you think. thanks, Jake To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message