lkml.org 
[lkml]   [2003]   [May]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] Use correct x86 reboot vector
From
Date
Linus Torvalds <torvalds@transmeta.com> writes:

> On Sat, 10 May 2003, Jamie Lokier wrote:
> > Jos Hulzink wrote:
> > > For the sake of bad behaving BIOSes however, I'd vote for the f000:fff0
> > > vector, unless someone can hand me a paper that says it is wrong.
> >
> > I agree, for the simple reason that it is what the chip does on a
> > hardware reset signal.
>
> Hmm.. Doesnt' a _real_ hardware reset actually use a magic segment that
> isn't even really true real mode? I have this memory that the reset value
> for a i386 has CS=0xf000, but the shadow base register actually contains
> 0xffff0000. In other words, the CPU actually starts up in "unreal" mode,
> and will fetch the first instruction from physical address 0xfffffff0.
>
> At least that was true on an original 386. It's something that could
> easily have changed since.

Correct. And no one has changed it since. I use that all of the time.

> In other words, you're all wrong. Nyaah, nyaah.

However 0xf000:fff0 is as close as you can get, and since that is usually
RAM it can do something different on a reset vs a reboot if it wants
to.

Using 0xf000 is just polite as it allows relative jumps.

Eric
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:35    [from the cache]
©2003-2011 Jasper Spaans