29 #ifndef SYS_MON_RTOS_H
30 #define SYS_MON_RTOS_H
36 #define RTOS_MON_MAX_THREADS 20
40 #define RTOS_MON_NAME_LEN 5
43 #define RTOS_MON_THREAD_NAMES (RTOS_MON_MAX_THREADS * RTOS_MON_NAME_LEN)
void rtos_mon_init_arch(void)
uint16_t thread_load[RTOS_MON_MAX_THREADS]
individual thread load in centi-percent (10*%)
void rtos_mon_periodic_arch(void)
#define RTOS_MON_MAX_THREADS
char thread_names[RTOS_MON_THREAD_NAMES+1]
string of thread names / identifiers
uint8_t thread_name_idx
length of the string in thread_names buffer
uint8_t cpu_load
global CPU/MCU load in %
uint16_t thread_free_stack[RTOS_MON_MAX_THREADS]
individual thread free stack in bytes
uint8_t thread_counter
number of threads
uint32_t core_free_memory
core free memory in bytes
struct rtos_monitoring rtos_mon
uint32_t heap_free_memory
heap free memory in bytes
#define RTOS_MON_THREAD_NAMES
System monitoring common header return cpu load, average exec time, ...