Random Questions
Posted: Tue Mar 31, 2009 7:46 am
hi guys,
Can you help me out with this?
This is taken from tutorial 11 (Kernel file). I have been using it for a while now and I have taken it for granted. My question is
I understand that we are now in 32 bit protected mode and we need to point the data segment to the data selector which has index of 16 (0x10). But what exactly mov ax, 0x10 means, I mean after this mov ax, 0x10 get executed, everytime we refer to the data segment, what address in the memory we are looking at?
And is there any special reason for setting the stack pointer to 0x90000?
I hope I explain my question alright! Its kind of vague to me though.
Thanks in advance
Can you help me out with this?
Code: Select all
mov ax, 0x10 ; set data segments to data selector (0x10)
mov ds, ax
mov ss, ax
mov es, ax
mov esp, 0x90000
This is taken from tutorial 11 (Kernel file). I have been using it for a while now and I have taken it for granted. My question is
I understand that we are now in 32 bit protected mode and we need to point the data segment to the data selector which has index of 16 (0x10). But what exactly mov ax, 0x10 means, I mean after this mov ax, 0x10 get executed, everytime we refer to the data segment, what address in the memory we are looking at?
And is there any special reason for setting the stack pointer to 0x90000?
I hope I explain my question alright! Its kind of vague to me though.
Thanks in advance