From owner-freebsd-arch Fri Sep 20 17: 0:15 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 98CF837B406 for ; Fri, 20 Sep 2002 17:00:12 -0700 (PDT) Received: from rwcrmhc52.attbi.com (rwcrmhc52.attbi.com [216.148.227.88]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4687C43E65 for ; Fri, 20 Sep 2002 17:00:12 -0700 (PDT) (envelope-from julian@elischer.org) Received: from InterJet.elischer.org ([12.232.206.8]) by rwcrmhc52.attbi.com (InterMail vM.4.01.03.27 201-229-121-127-20010626) with ESMTP id <20020921000011.WYRL464.rwcrmhc52.attbi.com@InterJet.elischer.org>; Sat, 21 Sep 2002 00:00:11 +0000 Received: from localhost (localhost.elischer.org [127.0.0.1]) by InterJet.elischer.org (8.9.1a/8.9.1) with ESMTP id QAA21633; Fri, 20 Sep 2002 16:55:09 -0700 (PDT) Date: Fri, 20 Sep 2002 16:55:08 -0700 (PDT) From: Julian Elischer To: Terry Lambert Cc: freebsd-arch@freebsd.org Subject: Re: New Linux threading model In-Reply-To: <3D8B8E35.EDAF4450@mindspring.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII 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 Ok, Terry, I've thought of the best way that we can use your particular talents. How about this.. We have a particular set of scheduling requirements: 1/ We want threads to have as much parallelism as possible given the hardware 2/ We want a particular process to be able to contain 'subentities' that can be scheduled with different policies. (we call them ksegroups) 3/ We want simple processes to behave exactly as now, and new processes to compete with traditional processes on a basis SIMILAR to how traditional processs compete with each other. 4/ Partly a corrolary to 3: A threaded process can not overwhelm a system's scheduler with many threads. (we have a structure 'kse' that may come in handy for this, but if you thnk of a better way, consider it.. 5/ improve handling of large numbers of threads. 6/ If possible allow selection of scheduler algorythms at run time (*) (*) I said IF POSSIBLE.. Given these restraints, can you go through the literature, pick out relevent examples, and report back to us with scheduling schemes that may work for us. You are also welcome to make up your own schemes based on what you read or feel. I'm not saying this is how we'll go, just that it's come time that someone rescanned the literature again, and we could certainly do with a discussion on the topic. You may recruit as many "scheduler gurus" as you wish to help you. Of particular interest to you shuld be: 1/ READ THE CURRENT CODE (kern_switch.c and proc.h) 2/ The mach and chorus schedulers if you can find info on them 3/ SAs 4/ Linucks new scheduler. (READ THE CODE) 5/ the Solaris scheduler re: LWPs "Should you decide to accept this mission, the secretary will of course deny any knowledge of your actions. This email will self destruct in however long it takes you to hit the 'd' key." To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message