[ECOS] i386 Memory Size Problem, Bug 1000060

kevin_lemay@agilent.com kevin_lemay@agilent.com
Wed Dec 10 18:17:00 GMT 2003


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,


-----Original Message-----
From: nickg@miso.calivar.com [mailto:nickg@miso.calivar.com]On Behalf Of
Nick Garnett
Sent: Wednesday, December 03, 2003 2:29 AM
To: LEMAY,KEVIN (A-Roseville,ex1)
Cc: ecos-discuss@sources.redhat.com
Subject: Re: [ECOS] i386 Memory Size Problem

<kevin_lemay@agilent.com> writes:

> It appears that Linux uses hard coded memory addresses to store the
> memory map and size, switches to protected mode and then accesses
> the saved data in ram.
> I attempted to use this same method, but it does not appear to be
> running. I added new character outputs to the display during boot
> which do not appear. Any ideas on what I am doing wrong?

Maybe you have chosen some inconvenient addresses. Does the
application work if it does not access the saved memory sizes, just
uses the CMOS values? You mentioned previously that you were putting
the sizes at 1Mb and that it worked, what have you changed since then?
Make sure that your debug outputs are not corrupting things

I'm not sure what else I can suggest.

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

More information about the Ecos-discuss mailing list