# Revision History {#rtos_revisionHistory}
| Version | Description |
|---|---|
| V2.3.0 | Added provisional support for processor affinity in SMP systems: - \ref osThreadAttr_t :: affinity_mask - \ref osThreadSetAffinityMask, \ref osThreadGetAffinityMask |
| V2.2.0 |
Added support for Process Isolation (Functional Safety):
- Kernel Management: \ref osKernelProtect, \ref osKernelDestroyClass
- Thread Management: \ref osThreadGetClass, \ref osThreadGetZone, \ref osThreadSuspendClass, \ref osThreadResumeClass, \ref osThreadTerminateZone, \ref osThreadFeedWatchdog, \ref osThreadProtectPrivileged - Thread attributes: \ref osThreadZone, \ref osThreadUnprivileged, \ref osThreadPrivileged - Object attributes: \ref osSafetyClass - Handler functions: \ref osWatchdogAlarm_Handler - Zone Management: \ref osZoneSetup_Callback - Exception Faults: \ref osFaultResume Additional functions allowed to be called from Interrupt Service Routines: - \ref osThreadGetName, \ref osEventFlagsGetName, \ref osTimerGetName, \ref osMutexGetName, \ref osSemaphoreGetName, \ref osMemoryPoolGetName, \ref osMessageQueueGetName |
| V2.1.3 | Additional functions allowed to be called from Interrupt Service Routines: - \ref osThreadGetId |
| V2.1.2 | Additional functions allowed to be called from Interrupt Service Routines: - \ref osKernelGetInfo, \ref osKernelGetState |
| V2.1.1 | Additional functions allowed to be called from Interrupt Service Routines: - \ref osKernelGetTickCount, \ref osKernelGetTickFreq Changed Kernel Tick type to uint32_t: - updated: \ref osKernelGetTickCount, \ref osDelayUntil |
| V2.1.0 | Support for critical and uncritical sections (nesting safe): - updated: \ref osKernelLock, \ref osKernelUnlock - added: \ref osKernelRestoreLock Updated \ref CMSIS_RTOS_ThreadFlagsMgmt "Thread Flags" and \ref CMSIS_RTOS_EventFlags "Event Flags": - changed flags parameter and return type from int32_t to uint32_t |
| V2.0.0 | New API Version 2.0 available. - See \ref CMSIS_RTOS for a detailed function reference. |
| V1.02 - only documentation changes | Added: Overview of the \ref rtosValidation "CMSIS-RTOS Validation" Software Pack.\n Clarified: Behavior of \ref CMSIS_RTOS_TimeOutValue. |
| V1.02 | Added: New control functions for short timeouts in microsecond resolution \b osKernelSysTick, \b osKernelSysTickFrequency, \b osKernelSysTickMicroSec.\n Removed: osSignalGet. |
| V1.01 | Added capabilities for C++, kernel initialization and object deletion.\n Prepared for C++ class interface. In this context to \em const attribute has been moved from osXxxxDef_t typedefs to the osXxxxDef macros.\n Added: \ref osTimerDelete, \ref osMutexDelete, \ref osSemaphoreDelete .\n Added: \ref osKernelInitialize that prepares the kernel for object creation.\n |
| V1.00 | First official Release.\n Added: \ref osKernelStart; starting 'main' as a thread is now an optional feature.\n Semaphores have now the standard behavior.\n \b osTimerCreate does no longer start the timer. Added: \ref osTimerStart (replaces osTimerRestart).\n Changed: osThreadPass is renamed to \ref osThreadYield. |
| V0.02 | Preview Release. |