*BSD News Article 33931


Return to BSD News archive

Xref: sserve comp.os.386bsd.misc:3064 comp.os.linux.misc:21228
Path: sserve!newshost.anu.edu.au!harbinger.cc.monash.edu.au!msuinfo!agate!dog.ee.lbl.gov!news.cs.utah.edu!u.cc.utah.edu!cs.weber.edu!terry
From: terry@cs.weber.edu (Terry Lambert)
Newsgroups: comp.os.386bsd.misc,comp.os.linux.misc
Subject: Re: Usefulness of BSD/Linux Source Knowledge (was BSD vs. LINUX)
Date: 6 Aug 1994 07:35:35 GMT
Organization: Weber State University, Ogden, UT
Lines: 39
Message-ID: <31veg7$4r8@u.cc.utah.edu>
References: <31mfon$efs@glitnir.ifi.uio.no> <31racs$si2@nyheter.chalmers.se> <Cu2ny3.J9o@boulder.parcplace.com>
NNTP-Posting-Host: cs.weber.edu

In article <Cu2ny3.J9o@boulder.parcplace.com> imp@boulder.parcplace.com (Warner Losh) writes:
] In article <31racs$si2@nyheter.chalmers.se> tl@cd.chalmers.se
] (Torbj|rn Lindgren) writes: 
] >Adding SMP was prrobably rather easy. Just put a big lock on the whole
] >kernel... This means that only one process (or thread) can be in the
] >kernel in the kernel a given time, but if that process can run on any
] >processor you have a SMP (per definition, symmetric means that either
] >processor may run kernel tasks, not that more than one process may be
] >in the kernel).
] 
] What you describe is ASMP.  With ASMP, you must block until the
] "Master" CPU is ready to process your kernel request, where with you
] suggestion, you must wait for the current CPU to finish being in the
] kernel.  It sounds like you have a floating Master CPU.  A SMP kernel,
] btw, means that you can have multiple processes in the kernel
] concurrently and not more than one of them is accessing the same
] criticial structures at the same time.  So one could be servicing a
] serial line interrupt while the other one is blitting stuff to a
] remote X server.

Huh?

SMP doesn't absolutely *require* kernel threading and preemption, it's
just more efficient when done that was.

SMP only means that a single master processer is NOT required to take
all your interrupts for you, not that the kernel be multiply reentrant.

I didn't see a requirement in Torbj|r's posting nthat a single processer
take all kernel entrnces, nor all interrupts -- only that only one be
active at a time.  This is not the typical lack of symmetry of ASMP.


					Regards,
					Terry Lambert
					terry@cs.weber.edu
---
Any opinions in this posting are my own and not those of my present
or previous employers.