CMSIS-RTOS2
Version 2.2.0
Real-Time Operating System: API and RTX Reference Implementation
|
This section lists the CMSIS-RTOS API v1 and API v2 functions along with the differences in functionality. The list is sorted alphabetically by API v2 function names and is structured the following way:
The background color indicates:
osStatus_t osKernelGetInfo (osVersion_t* version, char* id_buf, uint32_t id_size)
osKernelState_t osKernelGetState (void)
int32_t osKernelRunning (void)
uint32_t osKernelGetTickFreq (void)
uint32_t osKernelGetSysTimerCount (void)
uint32_t osKernelSysTick (void)
uint64_t osKernelGetSysTimerFreq (void)
osStatus_t osKernelInitialize (void)
osStatus osKernelInitialize (void)
osStatus_t osKernelStart (void)
osStatus osKernelStart (void)
osStatus_t osThreadDetach (osThreadId_t thread_id)
uint32_t osThreadEnumerate (osThreadId_t *thread_array, uint32_t array_items)
__NO_RETURN void osThreadExit (void)
osThreadId_t osThreadGetId (void)
osThreadId osThreadGetId (void)
osPriority_t osThreadGetPriority (osThreadId_t thread_id)
osPriority osThreadGetPriority (osThreadId thread_id)
uint32_t osThreadGetStackSize (osThreadId_t thread_id)
uint32_t osThreadGetStackSpace (osThreadId_t thread_id)
osThreadState_t osThreadGetState (osThreadId_t thread_id)
osStatus_t osThreadJoin (osThreadId_t thread_id)
osThreadId_t osThreadNew (osThreadFunc_t function, void *argument, const osThreadAttr_t *attr)
osThreadId osThreadCreate (const osThreadDef_t *thread_def, void *argument)
void func (void *arg)
, before: void func (const void *arg)
.osStatus_t osThreadSetPriority (osThreadId_t thread_id, osPriority_t priority)
osStatus osThreadSetPriority (osThreadId thread_id, osPriority priority)
osStatus_t osThreadSuspend (osThreadId_t thread_id)
osStatus_t osThreadTerminate (osThreadId_t thread_id)
osStatus osThreadTerminate (osThreadId thread_id)
osStatus_t osThreadYield (void)
osStatus osThreadYield (void)
New section to synchronize threads using flags. Thread flags and the more flexible Event Flags are replacing the RTOS v1 Signal Events. Refer to Signal Events for a list of deprecated functions. Refer to Thread Flags for details.
uint32_t osThreadFlagsSet (osThreadId_t thread_id, uint32_t flags)
uint32_t osThreadFlagsClear (uint32_t flags)
uint32_t osThreadFlagsGet (void)
uint32_t osThreadFlagsWait (uint32_t flags, uint32_t options, uint32_t timeout)
New section to synchronize events using flags. Event flags and thread flags are replacing the RTOS v1 Signal Events. All functions listed in the RTOS v1 Signal Events have been deprecated. Refer to Signal Events for a list of deprecated functions. Refer to Event Flags for details about the new function.
uint32_t osEventFlagsClear (osEventFlagsId_t ef_id, uint32_t flags)
const char *osEventFlagsGetName (osEventFlagsId_t ef_id)
osStatus_t osEventFlagsDelete (osEventFlagsId_t ef_id)
osEventFlagsId_t osEventFlagsNew (const osEventFlagsAttr_t *attr)
uint32_t osEventFlagsSet (osEventFlagsId_t ef_id, uint32_t flags)
uint32_t osEventFlagsWait (osEventFlagsId_t ef_id, uint32_t flags, uint32_t options, uint32_t timeout)
Refer to Generic Wait Functions for details.
osStatus_t osDelay (uint32_t ticks)
osStatus osDelay (uint32_t timeout)
osEvent osWait (uint32_t millisec)
Refer to Timer Management for details.
osStatus_t osTimerDelete (osTimerId_t timer_id)
osStatus osTimerDelete (osTimerId timer_id)
osTimerId_t osTimerNew (osTimerFunc_t func, osTimerType_t type, void *argument, const osTimerAttr_t *attr)
osTimerId osTimerCreate (const osTimerDef_t *timer_def, os_timer_type type, void *argument)
osStatus_t osTimerStart (osTimerId_t timer_id, uint32_t ticks)
osStatus osTimerStart (osTimerId timer_id, uint32_t timeout)
osStatus_t osTimerStop (osTimerId_t timer_id)
osStatus osTimerStop (osTimerId timer_id)
Refer to Mutex Management for details.
osStatus_t osMutexAcquire (osMutexId_t mutex_id, uint32_t timeout)
osStatus osMutexWait (osMutexId mutex_id, uint32_t timeout)
osStatus_t osMutexDelete (osMutexId_t mutex_id)
osStatus osMutexDelete (osMutexId mutex_id)
osThreadId_t osMutexGetOwner (osMutexId_t mutex_id)
osMutexId_t osMutexNew (const osMutexAttr_t *attr)
osMutexId osMutexCreate (const osMutexDef_t *mutex_def)
osStatus_t osMutexRelease (osMutexId_t mutex_id)
osStatus osMutexRelease (osMutexId mutex_id)
Refer to Semaphores for details.
osStatus_t osSemaphoreAcquire (osSemaphoreId_t semaphore_id, uint32_t timeout)
osSemaphoreWait
. osStatus_t osSemaphoreDelete (osSemaphoreId_t semaphore_id)
osStatus osSemaphoreDelete (osSemaphoreId semaphore_id)
uint32_t osSemaphoreGetCount (osSemaphoreId_t semaphore_id)
const char *osSemaphoreGetName (osSemaphoreId_t semaphore_id)
osSemaphoreId_t osSemaphoreNew (uint32_t max_count, uint32_t initial_count, const osSemaphoreAttr_t *attr)
osSemaphoreId osSemaphoreCreate (const osSemaphoreDef_t *semaphore_def, int32_t count)
osStatus_t osSemaphoreRelease (osSemaphoreId_t semaphore_id)
osStatus osSemaphoreRelease (osSemaphoreId semaphore_id)
int32_t osSemaphoreWait (osSemaphoreId semaphore_id, uint32_t timeout)
void * osMemoryPoolAlloc (osMemoryPoolId_t mp_id, uint32_t timeout)
void * osPoolAlloc (osPoolId pool_id)
osStatus_t osMemoryPoolDelete (osMemoryPoolId_t mp_id)
osStatus_t osMemoryPoolFree (osMemoryPoolId_t mp_id, void * block)
osStatus osPoolFree (osPoolId pool_id, void * block)
uint32_t osMemoryPoolGetBlockSize (osMemoryPoolId_t mp_id)
uint32_t osMemoryPoolGetCapacity (osMemoryPoolId_t mp_id)
uint32_t osMemoryPoolGetCount (osMemoryPoolId_t mp_id)
const char *osMemoryPoolGetName (osMemoryPoolId_t mp_id)
uint32_t osMemoryPoolGetSpace (osMemoryPoolId_t mp_id)
osMemoryPoolId_t osMemoryPoolNew (uint32_t block_count, uint32_t block_size, const osMemoryPoolAttr_t *attr)
osPoolId osPoolCreate (const osPoolDef_t * pool_def)
In general, messages are now using fixed size memory instead of being 32-bit values. Refer to Message Queue for details.
osStatus_t osMessageQueueDelete (osMessageQueueId_t mq_id)
osStatus_t osMessageQueueGet (osMessageQueueId_t mq_id, void *msg_ptr, uint8_t *msg_prio, uint32_t timeout)
osEvent osMessageGet (osMessageQId queue_id, uint32_t timeout)
uint32_t osMessageQueueGetCapacity (osMessageQueueId_t mq_id)
uint32_t osMessageQueueGetCount (osMessageQueueId_t mq_id)
uint32_t osMessageQueueGetMsgSize (osMessageQueueId_t mq_id)
const char *osMessageQueueGetName (osMessageQueueId_t mq_id)
uint32_t osMessageQueueGetSpace (osMessageQueueId_t mq_id)
osMessageQueueId_t osMessageQueueNew (uint32_t msg_count, uint32_t msg_size, const osMessageQueueAttr_t *attr)
osMessageQId osMessageCreate (const osMessageQDef_t *queue_def, osThreadId thread_id)
osStatus_t osMessageQueuePut (osMessageQueueId_t mq_id, const void *msg_ptr, uint8_t msg_prio, uint32_t timeout)
osStatus osMessagePut (osMessageQId queue_id, uint32_t info, uint32_t timeout)
osStatus_t osMessageQueueReset (osMessageQueueId_t mq_id)
The Mail Queue RTOS v1 functions have been deprecated. Use the functionality of the Message Queue instead. Differences are listed under Message Queue.
void * osMailAlloc (osMailQId queue_id, uint32_t timeout)
void * osMailCAlloc (osMailQId queue_id, uint32_t timeout)
osMailQId osMailCreate (const osMailQDef_t *queue_def, osThreadId thread_id)
osStatus osMailFree (osMailQId queue_id, void *mail)
osEvent osMailGet (osMailQId queue_id, uint32_t timeout)
osStatus osMailPut (osMailQId queue_id, void *mail)
The section RTOS v1 Signal Events has been deprecated. Use the functions listed under Thread Flags instead.
int32_t osSignalClear (osThreadId thread_id, int32_t signals)
int32_t osSignalSet (osThreadId thread_id, int32_t signals)
osEvent osSignalWait (int32_t signals, uint32_t timeout)