From owner-freebsd-arch Sat Aug 18 13:13:48 2001 Delivered-To: freebsd-arch@freebsd.org Received: from ns.caldera.de (ns.caldera.de [212.34.180.1]) by hub.freebsd.org (Postfix) with ESMTP id 1FA3B37B414; Sat, 18 Aug 2001 13:08:25 -0700 (PDT) (envelope-from hch@ns.caldera.de) Received: (from hch@localhost) by ns.caldera.de (8.11.1/8.11.1) id f7IK8OW12821; Sat, 18 Aug 2001 22:08:24 +0200 Date: Sat, 18 Aug 2001 22:08:23 +0200 From: Christoph Hellwig To: Mike Smith Cc: Christoph Hellwig , Matthew Jacob , Amit Shah , freebsd-arch@FreeBSD.ORG Subject: Re: threaded device drivers Message-ID: <20010818220823.C8481@caldera.de> References: <20010818214826.B8481@caldera.de> <200108181956.f7IJuJS00930@mass.dis.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <200108181956.f7IJuJS00930@mass.dis.org>; from msmith@FreeBSD.ORG on Sat, Aug 18, 2001 at 12:56:19PM -0700 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 On Sat, Aug 18, 2001 at 12:56:19PM -0700, Mike Smith wrote: > > You might want to take a look at Linux's schedule_task family of cuntions > > (kernel/context.c) - it should be straight forward to implement for FreeBSD. > > But entirely unnecessary, since we can already create threads in the > kernel, as I pointed out earlier. See the kthread* family of functions. I know kthread ;) The differnce is just that you need an entire thread this way - threads are eating up far too much ressources (e.g. kernel stack) for certain types of problems. A way to just execute some function in user context is a very nice appropeach for lots of the smaller stuff. Some people might also remeber NetWare's WorkToDo's that can do this stuff combines with wait queues. Christoph -- Christoph Hellwig Kernel Engineer Unix/Linux Integration Caldera Deutschland GmbH To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message