* What's the value of %cs before jump in pm32 on booting?
@ 2011-08-11 11:18 jiangtao.jit
2011-08-11 14:53 ` Mulyadi Santosa
0 siblings, 1 reply; 3+ messages in thread
From: jiangtao.jit @ 2011-08-11 11:18 UTC (permalink / raw)
To: kernelnewbies
Hi all:
on booting of x86
top of file arch/x86/boot/pmjump.S
there is code
-------------------
GLOBAL(protected_mode_jump)
movl %edx, %esi
xorl %ebx, %ebx
movw %cs, %bx
shll $4, %ebx
addl %ebx, 2f
...
-------------------
what's the value of %cs here? how was it loaded?
i would really appreciate if someone provide me some references
thank you very much
2011-08-11
jiangtao.jit
^ permalink raw reply [flat|nested] 3+ messages in thread
* What's the value of %cs before jump in pm32 on booting?
2011-08-11 11:18 What's the value of %cs before jump in pm32 on booting? jiangtao.jit
@ 2011-08-11 14:53 ` Mulyadi Santosa
2011-08-11 16:29 ` Jonathan Neuschäfer
0 siblings, 1 reply; 3+ messages in thread
From: Mulyadi Santosa @ 2011-08-11 14:53 UTC (permalink / raw)
To: kernelnewbies
On Thu, Aug 11, 2011 at 18:18, jiangtao.jit <jiangtao.jit@gmail.com> wrote:
> Hi all:
>
> on booting of x86
> top of file arch/x86/boot/pmjump.S
> there is code
> -------------------
> GLOBAL(protected_mode_jump)
> ? ? ? ?movl ? ?%edx, %esi
> ? ? ? ?xorl ? ?%ebx, %ebx
i think it's zeroing bx (l--> low I suppose)
> ? ? ? ?movw ? ?%cs, %bx
then, it should zero the content of cs. Quite likely, it means to jump
to cpu ring level 0 and do something there..
--
regards,
Mulyadi Santosa
Freelance Linux trainer and consultant
blog: the-hydra.blogspot.com
training: mulyaditraining.blogspot.com
^ permalink raw reply [flat|nested] 3+ messages in thread
* What's the value of %cs before jump in pm32 on booting?
2011-08-11 14:53 ` Mulyadi Santosa
@ 2011-08-11 16:29 ` Jonathan Neuschäfer
0 siblings, 0 replies; 3+ messages in thread
From: Jonathan Neuschäfer @ 2011-08-11 16:29 UTC (permalink / raw)
To: kernelnewbies
On Thu, Aug 11, 2011 at 09:53:10PM +0700, Mulyadi Santosa wrote:
> On Thu, Aug 11, 2011 at 18:18, jiangtao.jit <jiangtao.jit@gmail.com> wrote:
> > Hi all:
> >
> > on booting of x86
> > top of file arch/x86/boot/pmjump.S
> > there is code
> > -------------------
> > GLOBAL(protected_mode_jump)
> > ? ? ? ?movl ? ?%edx, %esi
> > ? ? ? ?xorl ? ?%ebx, %ebx
>
> i think it's zeroing bx (l--> low I suppose)
Long, actually, i.e. 32-bit.
>
> > ? ? ? ?movw ? ?%cs, %bx
>
> then, it should zero the content of cs. Quite likely, it means to jump
> to cpu ring level 0 and do something there..
No, this is written in AT&T syntax, where the source comes first, and
then the destination. IOW, the code means: Copy the 16 bit register CS
into the lower 16 bit of EBX (which is BX).
CMIIW,
Jonathan Neusch?fer
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2011-08-11 16:29 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-08-11 11:18 What's the value of %cs before jump in pm32 on booting? jiangtao.jit
2011-08-11 14:53 ` Mulyadi Santosa
2011-08-11 16:29 ` Jonathan Neuschäfer
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.