Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 06 May 2002 01:09:30 -0700
From:      Terry Lambert <tlambert2@mindspring.com>
To:        Arun Sharma <arun-public@sharma-home.net>
Cc:        freebsd-smp@freebsd.org
Subject:   Re: hlt when idle?
Message-ID:  <3CD63A3A.DF96520A@mindspring.com>
References:  <15567.62317.677224.3470@grasshopper.cs.duke.edu> <3CD022A2.FACD21E9@mindspring.com> <20020506021157.GA30659@sharma-home.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Arun Sharma wrote:
> On Wed, May 01, 2002 at 10:15:14AM -0700, Terry Lambert wrote:
> 
> Terry,
> 
> > In theory, you want to run in "virtual wire mode", which means
> > that the CPUs get the interrupt, and then contend in order to
> > see who services it.
> 
> I think you're confused between "virtual wire mode" and the
> "Symmetric I/O mode" for quite some time (going by your previous
> messages on the topic).
> 
> Virtual wire mode is for DOS compatibility. Symmetric I/O mode is what
> most MP operating systems use.

Yes, I already made this (embarrassing!) determination on my own;
see my other posting.

By way of further elaboration...

I read about both back in October of 1994, when I got my first
FreeBSD SMP system running, and the Intel MP Spec was actually
1.1, not 1.4 (running using Jack Vogel's original FreeBSD SMP
patches, which I redistributed, and which were the basis for
the original current SMP work).  It wasn't entirely relevent,
since there was a single kernel entry lock, and I didn't have
any SMP hardware of my own until June of 1995, so I didn't
bother treating the document as being of high importance (i.e.
deserving of rote memorization).

The mistake really came about when, rather than referring back to
a memorized copy of the document, I derived the meaning from the
memorized digested combinations of the words from the document
themselves ("virtual wire" implies bussed delivery to a single
virtual interrupt wire, which is not what it really means in the
context of the Intel MP specification), which in turn led to my
long standing mistake (but doesn't excuse it).

Since noting this, I've committed the full outline of the 1.4 MP
specification to rote memory ("RFC memory" 8-) 8-)).  I won't make
the same mistake in the future.  Hopefully, anyone looking at the
archives will read more recent information first, and see the
corrections, and read the concepts, not the literal words, in my
historical postings.

Unfortunately, I have a learning disability that makes symbolic
substitutions highly probable: it's called "aphasic dyslexia",
which means I switch around not only letters in words, but also
symbolic representations, as well ...which I learned to my regret,
the first time I took math 452 without having real world examples
available from which to derive the math as a cross-check.  After
that, I took my math one quarter behind the physics that required
it.  I actually spell as well as I do only because I get tactile
feedback on typing misspellings, and correct them (it's one of my
coping mechanisms) -- mostly... if I'm not typing in a hurry and/or
sleep deprived.  People might notice that they match the preferred
spellings in the OED from my 4th grade Elementary school.  You can
even figure out which words I learned from reading it ("color" vs.
"develope" vs. "behaviour", etc.).  Clifford D. Simak (English
author) is also responsible for some of my spelling.  8-).

You can actually find a number of examples of symbolic language
processing mistakes on my part similar to this one -- with the
associated corrections, if the mistakes are eggregious enough;
English is actually conceptually very forgiving, unless you are
using technical jargon with explicit meanings -- in the FreeBSD
archives.  It usually leads to some really quite off-the-wall
misunderstandings when it happens; they are fortuantely rather
rare, and people generally cut me the necessary slack to make
the corrections, when they happen to the point of noticibility.

Heh.  More "useless information about Terry than you wanted", I'm
sure...

Again: mea culpa.

-- Terry

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-smp" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3CD63A3A.DF96520A>