How memory access violation should be handled ?

Sebastian Huber sebastian.huber at embedded-brains.de
Fri Jul 5 07:23:08 UTC 2013


On 07/04/2013 09:33 PM, Peter Dufault wrote:
> On Jul 4, 2013, at 03:31 , Sebastian Huber<sebastian.huber at embedded-brains.de>  wrote:
>
>> >On 07/04/2013 04:40 AM, Hesham Moustafa wrote:
>>> >>Hi,
>>> >>
>>> >>What's the best way(s) to handle memory exceptions that result from memory
>>> >>access and permission violations ? for example, what should happen if an area
>>> >>of memory set to be read only and a thread tried to write data into this area ?
>>> >>Currently I am using it in debugging purpose to monitor exception handling and
>>> >>get some details, bit what should happen in practice ?
>> >
>> >The systems should end up in an exception which should call
>> >
>> >   rtems_fatal(
>> >     RTEMS_FATAL_SOURCE_EXCEPTION,
>> >     (rtems_fatal_code) exception_frame_pointer
>> >   );
>> >
>> >This is all a single address space operating system can do.  The fatal
>> >extensions can then deal with the error.
>> >
>> >--
> It would be useful to be able to get it into a signal handler using sigaction for SIGBUS or SIGSEGV.

You can add an initial extension and do with this error whatever you want.  The 
initial fatal extensions have a very limited execution environment requirement:

http://www.rtems.org/onlinedocs/doxygen/cpukit/html/group__ScoreIntErr.html#ga68b70f90a5add34b8c83d206f8b53ee9

I don't think it is a good idea to add signals here as a default since they 
require much more infrastructure.

-- 
Sebastian Huber, embedded brains GmbH

Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone   : +49 89 189 47 41-16
Fax     : +49 89 189 47 41-09
E-Mail  : sebastian.huber at embedded-brains.de
PGP     : Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.



More information about the devel mailing list