BeRTOS
Functions
monitor.h File Reference

Monitor to check for stack overflows. More...

#include "cfg/cfg_monitor.h"
#include <cpu/types.h>

Go to the source code of this file.

Functions

void monitor_start (size_t stacksize, cpu_stack_t *stack)
 Start the kernel monitor.
size_t monitor_checkStack (cpu_stack_t *stack_base, size_t stack_size)
 Manually check if a given stack has overflown.
void monitor_report (void)
 Print a report of the stack status through kdebug.

Detailed Description

Monitor to check for stack overflows.

Author:
Giovanni Bajo <rasky@develer.com>

Definition in file monitor.h.


Function Documentation

size_t monitor_checkStack ( cpu_stack_t *  stack_base,
size_t  stack_size 
)

Manually check if a given stack has overflown.

This is used to check for stacks of processes handled externally form the kernel, or for other stacks (for instance the interrupt supervisor stack).

Note:
For this function to work, the stack must have been filled at startup with CONFIG_KERN_STACKFILLCODE.
void monitor_start ( size_t  stacksize,
cpu_stack_t *  stack 
)

Start the kernel monitor.

It is a special process which checks every second the stacks of the running processes trying to detect stack overflows.

Parameters:
stacksizeSize of stack in chars
stackPointer to the stack that will be used by the monitor
Note:
The stack is provided by the caller so that there is no wasted space if the monitor is not used.