Does someone know why the linux boot reallocates itself from 0x7c00 to 0x90000 ?
I really don't understand...
thanks !
Linux boot
Linux boot : another one !
Now, I have another question !
This is a quote frome the linux bootsect.S :
! ok, we've written the message, now
! we want to load the system (at 0x10000)
mov ax,#SYSSEG
mov es,ax ! segment of 0x010000
call read_it
call kill_motor
call print_nl
We aren't in Pmode !!! How is it possible to load the system at physical address 0x100000 ???
I really don't understand too...
This is a quote frome the linux bootsect.S :
! ok, we've written the message, now
! we want to load the system (at 0x10000)
mov ax,#SYSSEG
mov es,ax ! segment of 0x010000
call read_it
call kill_motor
call print_nl
We aren't in Pmode !!! How is it possible to load the system at physical address 0x100000 ???
I really don't understand too...
Re:Linux boot
Sorry I may be wrong as I havn't done much in real mode addressing but the solution may be this:-
I know that somehow 16bit addresses allow you to access just over 1mb (look through the boot sector topics from a while ago) and if the code copied there is small then it may work.
Just a guess
Pete
I know that somehow 16bit addresses allow you to access just over 1mb (look through the boot sector topics from a while ago) and if the code copied there is small then it may work.
Just a guess
Pete
- Pype.Clicker
- Member
- Posts: 5964
- Joined: Wed Oct 18, 2006 2:31 am
- Location: In a galaxy, far, far away
- Contact:
Re:Linux boot
you may not have a segment of 0x10000 as the ES register is only 16bits wide.Silverhawk wrote: Yes, but a segment of 0x10000 gives a physical address of 0x100000 ??
Code: Select all
@asm-i386/boot.h:
#define DEF_SYSSEG 0x1000
@boot/setup.S
SYSSEG = DEF_SYSSEG # 0x1000, system loaded at 0x10000 (65536).
for sure linux comments could be less confuse here.
Re:Linux boot
OK you're right !
I've read the code with more attention, and indeed, we're at physical address 0x10000...
I 've believe what the comments...
Thanks Pype.Cliker
I've read the code with more attention, and indeed, we're at physical address 0x10000...
I 've believe what the comments...
Thanks Pype.Cliker