Page Fault - VxWorks
This is a discussion on Page Fault - VxWorks ; Hi All,
The target is a pc486 with 3 NIC Cards fei82550 and its RAM is
256MB.
My bootable vxworks include the application project.
A bootable vxworks image is created ,with a main function of the
application project which is ...
-
Page Fault
Hi All,
The target is a pc486 with 3 NIC Cards fei82550 and its RAM is
256MB.
My bootable vxworks include the application project.
A bootable vxworks image is created ,with a main function of the
application project which is referenced in usrAppInit.c.
The application project is basically acting as a firewall with tasks
running for packet handing.
the image is working fine but after some time of running it gives error
like.........
page fault:
program counter : 0x001a8a90
Status Register : 0x00010246
error code : 0x00000000
Task : 0xa9a31d0 "INTRANET"
where intranet is user defined task in my application code.
can anyone suggest me about this.
thanks in advance
bunty
-
Re: Page Fault
On 4 Jan 2006, 80.manish@gmail.com wrote:
> the image is working fine but after some time of running it gives
> error like.........
> page fault:
> program counter : 0x001a8a90
> Status Register : 0x00010246
> error code : 0x00000000
> Task : 0xa9a31d0 "INTRANET"
> where intranet is user defined task in my application code.
Boot the system again and when things are loaded,
-> lkAddr 0x001a8a90
This will give you routines around where the page fault occurred.
Usually this is a bad pointer. "static" functions will not show up.
If you see a routine in a file with "external linkage", you can
calculate the exact line number. You have to produce an assembler
listing for the module. Get a delta between a routine from lkAddr and
the reported PC. Apply that delta to the assembler listing and you
should have the actual line of code.
You can try to reproduce this by loading and running in a debugger.
Even if the crash totally resets the system, when you reload in an
identical manner, the same code will be at the same address and you can
inspect the code at the address before the exception...
There are many ways to find this problem if it is repeatable.
However, your mystery may "thicken" if the PC is not really the
offending instruction. It may be that you have corrupted memory
somewhere else and the PC is just manifesting from the corruption.
Then you have to use other techniques.
hth,
Bill Pringlemeir.
--
Life, don't talk to me about life. - Marvin the robot
vxWorks FAQ, "http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html"