CMSIS-RTOS2 API
Overview of all CMSIS-RTOS C API v2 functions that are implemented in CMSIS-FreeRTOS.
- osKernelGetInfo: supported
- osKernelGetState: supported
- osKernelGetSysTimerCount: supported
- osKernelGetSysTimerFreq: supported
- osKernelInitialize: supported
- osKernelLock: supported
- osKernelUnlock: supported
- osKernelRestoreLock: supported
- osKernelResume: not implemented
- osKernelStart: supported
- osKernelSuspend: not implemented
- osKernelGetTickCount: supported
- osKernelGetTickFreq: supported
- osThreadDetach: not implemented
- osThreadEnumerate: supported
- osThreadExit: supported
- osThreadGetCount: supported
- osThreadGetId: supported
- osThreadGetName: supported
- osThreadGetPriority: supported
- osThreadGetStackSize: not implemented
- osThreadGetStackSpace: supported
- osThreadGetState: supported
- osThreadJoin: not implemented
- osThreadNew: supported
- osThreadResume: supported
- osThreadSetPriority: supported
- osThreadSuspend: supported
- osThreadTerminate: supported
- osThreadYield: supported
- osThreadFlagsSet: supported
- osThreadFlagsClear: supported
- osThreadFlagsGet: supported
- osThreadFlagsWait: supported
All event flags are limited to 24 bits.
- osEventFlagsGetName: not implemented
- osEventFlagsNew: supported
- osEventFlagsDelete: supported
- osEventFlagsSet: supported
- osEventFlagsClear: supported
- osEventFlagsGet: supported
- osEventFlagsWait: cannot be called from an ISR.
- osDelay: supported
- osDelayUntil: supported
- osTimerDelete: supported
- osTimerGetName: supported
- osTimerIsRunning: supported
- osTimerNew: supported
- osTimerStart: supported
- osTimerStop: supported
Priority inherit protocol is used as default mutex behavior (osMutexNew creates priority inherit mutex object by default and ignores osMutexPrioInherit attribute when specified).
Robust mutex objects are not supported (osMutexNew returns NULL when osMutexRobust attribute is specified).
- osMutexAcquire: supported
- osMutexDelete: supported
- osMutexGetName: not implemented
- osMutexGetOwner: supported
- osMutexNew: supported
- osMutexRelease: supported
- osSemaphoreAcquire: supported
- osSemaphoreDelete: supported
- osSemaphoreGetCount: supported
- osSemaphoreGetName: not implemented
- osSemaphoreNew: supported
- osSemaphoreRelease: supported
Memory Pool functions are not implemented and will always return with error.
- osMemoryPoolAlloc: supported
- osMemoryPoolDelete: supported
- osMemoryPoolFree: supported
- osMemoryPoolGetBlockSize: supported
- osMemoryPoolGetCapacity: supported
- osMemoryPoolGetCount: supported
- osMemoryPoolGetName: supported
- osMemoryPoolGetSpace: supported
- osMemoryPoolNew: supported
- osMessageQueueDelete: supported
- osMessageQueueGet: ignores message priority.
- osMessageQueueGetCapacity: supported
- osMessageQueueGetCount: supported
- osMessageQueueGetMsgSize: supported
- osMessageQueueGetName: not implemented
- osMessageQueueGetSpace: supported
- osMessageQueueNew: supported
- osMessageQueuePut: ignores message priority.
- osMessageQueueReset: supported