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.