2 \page rtos_revisionHistory Revision History
4 \section GenRTOS2Rev CMSIS-RTOS API Version 2
6 <table class="cmtable" summary="Revision History">
14 Additional functions allowed to be called from Interrupt Service Routines:
21 Additional functions allowed to be called from Interrupt Service Routines:
22 - \ref osKernelGetInfo, \ref osKernelGetState
28 Additional functions allowed to be called from Interrupt Service Routines:
29 - \ref osKernelGetTickCount, \ref osKernelGetTickFreq
31 Changed Kernel Tick type to uint32_t:
32 - updated: \ref osKernelGetTickCount, \ref osDelayUntil
38 Support for critical and uncritical sections (nesting safe):
39 - updated: \ref osKernelLock, \ref osKernelUnlock
40 - added: \ref osKernelRestoreLock
42 Updated \ref CMSIS_RTOS_ThreadFlagsMgmt "Thread Flags" and \ref CMSIS_RTOS_EventFlags "Event Flags":
43 - changed flags parameter and return type from int32_t to uint32_t
49 New API Version 2.0 available.
50 - See \ref rtos_api2 for a detailed function reference.
51 - See \ref os2Migration for details on the migration process from API Version 1.
55 <td>V1.02 - only documentation changes</td>
57 Added: Overview of the \ref rtosValidation "CMSIS-RTOS Validation" Software Pack.\n
58 Clarified: Behavior of \ref CMSIS_RTOS_TimeOutValue.
63 <td>Added: New control functions for short timeouts in microsecond resolution \b osKernelSysTick,
64 \b osKernelSysTickFrequency, \b osKernelSysTickMicroSec.\n
70 <td>Added capabilities for C++, kernel initialization and object deletion.\n
71 Prepared for C++ class interface. In this context to \em const attribute has been moved from osXxxxDef_t typedefs to
72 the osXxxxDef macros.\n
73 Added: \ref osTimerDelete, \ref osMutexDelete, \ref osSemaphoreDelete.\n
74 Added: \ref osKernelInitialize that prepares the kernel for object creation.\n
80 <td>First official Release.\n
81 Added: \ref osKernelStart; starting 'main' as a thread is now an optional feature.\n
82 Semaphores have now the standard behavior.\n
83 \b osTimerCreate does no longer start the timer. Added: \ref osTimerStart (replaces osTimerRestart).\n
84 Changed: osThreadPass is renamed to \ref osThreadYield.
89 <td>Preview Release.</td>
94 \section RTX5RevisionHistory CMSIS-RTOS RTX Version 5
96 <table class="cmtable" summary="Revision History">
104 - Fixed osMutexRelease issue (thread owning multiple mutexes).
105 - Improved osThreadJoin robustness (user programing errors).
111 - Updated and enhanced generated events (reorganized components).
112 - Updated configuration (Event Recorder).
113 - Updated Component Viewer (improved performance).
114 - Minor code optimizations.
120 - Based on CMSIS-RTOS API V2.1.3.
121 - Added support for Event Recorder initialization and filter setup.
122 - Added support to use RTOS as Event Recorder Time Stamp source.
123 - Fixed osDelayUntil longest delay (limited to 2^31-1).
124 - Fixed optimization issue when using GCC optimization level 3.
125 - Fixed osMemoryPoolAlloc to avoid potential race condition.
126 - Restructured exception handling for Cortex-A devices.
127 - Minor code optimizations (removed unnecessary checks).
133 - Added Object Memory usage counters.
134 - Added support for additional external configuration file.
135 - Added user configurable names for system threads (Idle and Timer).
136 - Added support for OS sections when using ARMCC5.
137 - Added callback for MPU integration (experimental)
138 - Increased default thread stack sizes to 256 bytes.
139 - Fixed stack context display for running thread in SCVD.
140 - Enhanced MISRA Compliance.
146 - Based on CMSIS-RTOS API V2.1.2.
147 - Added TrustZone Module Identifier configuration for Idle and Timer Thread.
148 - Moved SVC/PendSV handler priority setup from osKernelInitialize to osKernelStart (User Priority Grouping can be updated after osKernelInitialize but before osKernelStart).
149 - Corrected SysTick and PendSV handlers for ARMv8-M Baseline.
150 - Corrected memory allocation for stack and data when "Object specific Memory allocation" configuration is used.
151 - Added support for ARMv8-M IAR compiler.
157 - Corrected IRQ and SVC exception handlers for Cortex-A.
163 - Corrected SysTick and SVC Interrupt Priority for Cortex-M.
169 - Based on CMSIS-RTOS API V2.1.1.
170 - Added support for for Cortex-A.
171 - Using OS Tick API for RTX Kernel Timer Tick.
172 - Fixed potential corruption of terminated threads list.
173 - Corrected MessageQueue to use actual message length (before padding).
174 - Corrected parameters for ThreadEnumerate and MessageQueueInserted events.
175 - Timer Thread creation moved to osKernelStart.
181 - Based on CMSIS-RTOS API V2.1.0.
182 - Added support for Event recording.
183 - Added support for IAR compiler.
184 - Updated configuration files: RTX_Config.h for the configuration settings and RTX_config.c for implementing the \ref rtx5_specific.
185 - osRtx name-space for RTX specific symbols.
191 Initial release compliant to CMSIS-RTOS2.\n