Re: [question] x86/x86_64 boot process

From: Brandon Falk
Date: Tue Jun 12 2012 - 17:33:35 EST


Would it be reasonable to put the setup code at 0x7c00 (given that I
can fit my boot loader in the space before the kernel header)?

On Tue, Jun 12, 2012 at 5:20 PM, Brandon Falk <bfalk@xxxxxxxxxxxxxx> wrote:
> It's currently only for learning purposes, and I will change loading
> from 0x90000. Thanks for the help, now that I know that I'm
> responsible for loading the protected-mode code, I know what to do
> next.
>
> On Tue, Jun 12, 2012 at 5:16 PM, H. Peter Anvin <hpa@xxxxxxxxx> wrote:
>> On 06/12/2012 02:14 PM, Brandon Falk wrote:
>>> All I really see related to the post-setup stage is:
>>>
>>> 'The 32-bit (non-real-mode) kernel starts at offset (setup_sects+1)*512
>>> in the kernel file (again, if setup_sects == 0 the real value is 4.)
>>> It should be loaded at address 0x10000 for Image/zImage kernels and
>>> 0x100000 for bzImage kernels.'
>>>
>>> I've read this document a few times, and it doesn't seem to mention if
>>> the kernel assists in loading. Do I have to load up the whole
>>> protected-mode kernel? Just the first few sectors? I guess that's what
>>> I'm trying to figure out, and I feel the boot.txt has not answered
>>> that for me.
>>>
>>
>> I would also strongly discourage you from writing a new bootloader if
>> you can avoid it.  You *certainly* want to avoid the use of the fixed
>> 0x90000 address, that is a decade obsolete.
>>
>>        -hpa
>>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/