This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: i386 Memory Size Problem, Bug 1000060
<kevin_lemay@agilent.com> writes:
> Nick,
>
> I am really close to having this fixed. I have the new BIOS calls working to retrieve the BIOS memory map (e820), placing the data in the upper area of the 640K.
>
> The problem now, is that some BIOS (including mine) actually use that area for an extended BIOS area. I am looking for a good location to store my 648 bytes. It works on my machine, but I am looking for a safe area to use lower in memory.
>
> Does anyone have a memory map for how redboot uses ram on the i386 platform? It is not obvious from looking at the code.
>
> Any help would be appreciated,
>
>From memory:
0x0000..0x1000 is left empty, in theory for so that the BIOS data in
low memory can be accessed
0x1000..0x2000 contains the IDT, VSR table and virtual vector table
0x2000..0x3000 is where the SMP startup trampoline is placed for the
secondary CPUs
0x3000 is where RedBoot actually starts
Your best bet is probably to put your data somewhere in the first 4k,
at 0x1c00 maybe.
--
Nick Garnett eCos Kernel Architect
http://www.ecoscentric.com The eCos and RedBoot experts
--
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss