![]() | ||||||||||
Messages in this thread |
yes,DervishD.you give me a lot of help! Thanks On 6/16/05, DervishD <lkml@dervishd.net> wrote: > * guorke <gourke@gmail.com> dixit: > > in understangding the linux kernel, the authors says > > "..Moves itself from address 0x00007c00 to address 0x00090000.." > > > > What i confused is why the Boot Loader do this, i asked google,but > > still no answe. > > who can make me understand it ? > > Well, let's start with the Master Boot Record. In PC's the BIOS > loads the MBR at address 0x7c00, but the MBR is responsible for > loading the OS bootsector, if any. And the bootsectors are written > assuming that they're loaded by a MBR or *by the BIOS itself* so the > address they assume is 0x7c00. But the MBR is already at that > address! What can it do? Well, it moves itself out of the place. > > The problem is that the kernel itself could be loaded directly by > the BIOS (a long time ago, it was possible to boot from a raw floppy > containing an image of the kernel), and the first sector would be > loaded at 0x7c00, so the bootsector, MBR, loader or whatever has to > move out of that address at the very beginning. Why the physical > address 0x00090000 was used? I don't know. Well, it's well at the top > of the 640k base memory and the segment starts with 1001 in binary, > which is a fancy number XDD > > Hope that helps. > > Raúl Núñez de Arenas Coronado > > -- > Linux Registered User 88736 | http://www.dervishd.net > http://www.pleyades.net & http://www.gotesdelluna.net > It's my PC and I'll cry if I want to... > - 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-06-16 09:00 [from the cache] ©2003-2008 | ||||||||||