From owner-freebsd-smp Sun Apr 27 19:56:11 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.5/8.8.5) id TAA15042 for smp-outgoing; Sun, 27 Apr 1997 19:56:11 -0700 (PDT) Received: from cypher.net (black@zen.pratt.edu [205.232.115.155]) by hub.freebsd.org (8.8.5/8.8.5) with ESMTP id TAA15037 for ; Sun, 27 Apr 1997 19:56:08 -0700 (PDT) Received: (from black@localhost) by cypher.net (8.8.5/8.7.1) id WAA07732; Sun, 27 Apr 1997 22:53:58 -0400 Date: Sun, 27 Apr 1997 22:53:57 -0400 (EDT) From: Ben Black To: Chuck Robey cc: FreeBSD-SMP@FreeBSD.org Subject: Re: SMP In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-smp@FreeBSD.org X-Loop: FreeBSD.org Precedence: bulk freebsd-smp is not the best example of how to do SMP. it uses the simplest method: one giant kernel lock. i don't know that it is particularly representative of advanced SMP operating systems (though linux also uses a giant kernel lock). b3n On Sun, 27 Apr 1997, Chuck Robey wrote: > On Sun, 27 Apr 1997, Ben Black wrote: > > > try: > > UNIX Systems for Modern Architectures > > and > > UNIX Internals: The New Frontier > > > > also, check out the VSTA kernel (it is fully threaded) as is Solaris. > > also, mach papers from CMU provide good info on it. > > I am looking for FreeBSD info, not Sun info. Heck, the Frontiers book > has a sum total of 4 pages on architectures, none of which is about > FreeBSD. I don't want all that much, a parapgraph or two on what I asked > would do. Could Steve or Peter do that? > > I don't need to know how semaphores work. I want to know how FreeBSD SMP > semaphores differ from the FreeBSD non-SMP semaphores (for instance). > > > > > > > b3n > > > > On Sun, 27 Apr 1997, Chuck Robey wrote: > > > > > I am in the throes of writing an OS for an OS class. This is a class > > > project, and not ever going to be made public, but it got me thinking > > > about smp. Specifically, I'm wondering how kernel stuff works with 2 > > > processors .... are there two copies of the kernel running? Or does one > > > processor have to interrupt the other to get the kernel stuff working? > > > > > > I'm curious about that, and about how mutual exclusion type things work > > > when there're two processors that could be doing top level things at once. > > > How are things like virtual memory handled? Do the two processors have > > > to cooperate on VM? > > > > > > How about FS stuff ... are the two processors having the same view of the > > > disk (especially vnodes?) > > > > > > I'm not looking for a treatise here, but maybe just a few words on the > > > major changes that the smp code does would be really appreciated. Even > > > one long paragraph would better than nothing (I don't have time to read > > > thru all the code now). > > > > > > ----------------------------+----------------------------------------------- > > > Chuck Robey | Interests include any kind of voice or data > > > chuckr@eng.umd.edu | communications topic, C programming, and Unix. > > > 9120 Edmonston Ct #302 | > > > Greenbelt, MD 20770 | I run Journey2 and picnic, both FreeBSD > > > (301) 220-2114 | version 3.0 current -- and great FUN! > > > ----------------------------+----------------------------------------------- > > > > > > > > > ----------------------------+----------------------------------------------- > Chuck Robey | Interests include any kind of voice or data > chuckr@eng.umd.edu | communications topic, C programming, and Unix. > 9120 Edmonston Ct #302 | > Greenbelt, MD 20770 | I run Journey2 and picnic, both FreeBSD > (301) 220-2114 | version 3.0 current -- and great FUN! > ----------------------------+----------------------------------------------- >