initial eax value on x86

Philipp Eppelt philipp.eppelt at mailbox.tu-dresden.de
Sat Aug 13 10:05:58 CDT 2011


Hi,

thanks for your replies. It turns out, my code was not doing, what I 
expected. ;)
So I was confused by the output and the lack of knowledge.
By now I improved the code and I get the first request from the virtual 
RTEMS. :)

Again, thanks for your answers.

Kind Regards
Philipp

On 08/13/11 15:05, Joel Sherrill wrote:
> Eax is normally a scratch register. What is this code in? Are you jumping into the middle of something?
>
> --joel
>
> Chris Johns<chrisj at rtems.org>  wrote:
>
>> On 12/08/11 2:06 AM, Philipp Eppelt wrote:
>>> Hello RTEMS-User,
>>>
>>> I am a student at Dresden University of Technology and I am currently
>>> working on a student project with the goal to get RTEMS working on L4
>>> with the help of the L4-vCPU interface.
>>>
>>> I have a simple HelloWorld and compiled it for i386+pc586. I load the
>>> hello.exe elf into my program, set the IP to the entry_point, zeroed the
>>> area between filesize and memsize and set the SP to the end of that area.
>>> So far it works. But I get a PageFault on 100018, which is the asm
>>> instruction:
>>> 00100018 cmp (%eax),%dh
>>>
>>
>> Which file in RTEMS is this instruction from ?
>>
>>> So after the entry point 10000c there is only one instruction touching eax:
>>> 00100010 dec %eax
>>>
>>> Initially %eax is 0, then its -1.
>>> This is quite confusing and I couldn't find any hint in the start.S or
>>> bootcard.c if eax has to be initialized with a special value.
>>>
>>> Or did I completely miss something?
>>>
>>
>> The PC BSP assumes a boot loader. There may be some register protocol
>> between the boot loader and the start up code.
>>
>> Chris
>> _______________________________________________
>> rtems-users mailing list
>> rtems-users at rtems.org
>> http://www.rtems.org/mailman/listinfo/rtems-users



More information about the rtems-users mailing list