[ECOS] Virtual Vector Table.

Fabrice Gautier Fabrice_Gautier@sdesigns.com
Tue Oct 10 10:58:00 GMT 2000


> -----Original Message-----
> From: Nick Garnett [ mailto:nickg@cygnus.co.uk ]
> Sent: Tuesday, October 10, 2000 3:24 AM
> To: ecos-discuss@sourceware.cygnus.com
> Subject: Re: [ECOS] Virtual Vector Table.
> 
> 
> Gary Thomas <gthomas@redhat.com> writes:
> 
> Basically the VSR table and the virtual vector table must be in well
> known fixed memory addresses that can be found by both RedBoot and the
> loaded executable. They must also be in places that will not be
> overwritten by anything that might be loaded into memory. Ususally
> this means putting them at the bottom of RAM. I can think of three
> places in the PC that they could go:
> 
> 1. At the bottom of normal RAM, at 0x1000. This would mean pushing the
>    load address of RedBoot/monitor up to 0x2000.
> 
> 2. At the top of normal RAM, at 0x9F000. This has the slight
>    disadvantage that a large executable might overwrite it.
> 
> 3. At the bottom of extended memory, at 0x100000.
> 
> Of these option 1 is probably the best. So something like: 
> VSR table at
> 0x1000 and vector table at 0x1400.

Currently I think the VSR table is at 0x0000. It requires 0x800 (in
protected mode), and the Vector table require 64*8=0x200. So this could be:
VSR Table: 0x0000
Vector Table: 0x0800

And so you don't need to move the RedBoot load address.
Is there anything else that should prevent me to put this table at the very
beginning?

Thanks,

-- 
Fabrice Gautier
fabrice_gautier@sdesigns.com 



More information about the Ecos-discuss mailing list