Vxworks Program Exception Current Instruction Address
Program exception is generated when invalid instruction is executed on processor. Lufia Ii Rise Of The Sinistrals Game Genie. When you say instruction is invalid it could be because of following reasons. Corruption in text area. It is possible that some bad code is overwriting to program's text area. It may result in invalid opcode and cause program exception whenever that instruction is executed. Stack Corruption.
I changed the priority of a task to lower priority (212). 20-20 Revolution By Chetan Bhagat Pdf. In taskSpawn. Also I increased the stack size to 70000 (where 20000 is the default si. PowerPC Program Exception Debugging on vxWorks. When a function is invoked current stack pointer and return address are. Libros Gaston Bachelard Pdf. PowerPC Program Exception.
When a function is invoked current stack pointer and return address are saved on stack memory area. Lets take a case in which stack memory area where Link Register (LR) was saved is overwritten by some bad code. In this case when program will return from function call it will restore the link register value from stack to execute the instruction next to function call. As LR value on stack is modified due to stack corruption this will cause processor to execute an instruction saved at wrong address pointed by LR.
Corrupted value of LR might point to memory address which does not have instructions.In this case processor will generate program exception. To debug these kind of exception you can eliminate the first reason by turning on memory protection. VxWorks has a functionality to protect text area.
Details are given in following white paper ( Please check latest vxWorks manuals as well). If you suspect it's because of stack corruption you can register your own exception handler in vxWorks.