Date: Wed, 28 Jan 1998 22:31:48 -0500 From: "Gary Palmer" <gpalmer@FreeBSD.ORG> To: "MUTHU" <MOLAGAPP.IN.oracle.com.ofcmail@in.oracle.com> Cc: smp@FreeBSD.ORG Subject: Re: Why NCPU=1 doesn't work? Message-ID: <1752.886044708@gjp.erols.com> In-Reply-To: Your message of "23 Jan 1998 09:00:15 %2B0330." <199801230227.VAA06987@dwarpal.in.oracle.com>
next in thread | previous in thread | raw e-mail | index | archive | help
"MUTHU" wrote in message ID <199801230227.VAA06987@dwarpal.in.oracle.com>: > Hi, > > I lay a few questions which make me restless. I also thank in advance for > all who would answer these questions. > > 1. If SMP code is written in a generic way, then why NCPU=1 doesn't work > on a uniprocessor(non mp capable hardware)? I believe its because the non-SMP motherboards don't have the hardware (specifically the IO APIC) nevessary for supporting the SMP code. Hence, if you don't have the hardware, NCPU=1 breaks. > 2. Though it is dumb question, I would like to know why was SMP was > designed in a way that NCPU=1 doesn't work on uniprocessor? Ask Intel, I'm afraid. Probably cost. It's too expensive to put the IO APIC on motherboards that don't need it. > 3. Also NCPU is a compile time variable and all the static structures are > allocated with this variable. This makes to know manually how many processors > are in the SMP hardware and assign NCPU variable corresponding to this value. > This makes to compile and build different SMP kernel for different machine. > Why can't this variable value found in the mp_probe stage? The SMP code is still developmental. Its nowhere near its final form. Judging the code cleanliness now would be premature. Gary -- Gary Palmer FreeBSD Core Team Member FreeBSD: Turning PC's into workstations. See http://www.FreeBSD.ORG/ for info
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1752.886044708>