From 9f95ff5b6ba01db09552b84a0ab79607060a2666 Mon Sep 17 00:00:00 2001 From: Ali Labbene Date: Wed, 11 Dec 2019 08:59:21 +0100 Subject: Official ARM version: v5.4.0 Add CMSIS V5.4.0, please refer to index.html available under \docs folder. Note: content of \CMSIS\Core\Include has been copied under \Include to keep the same structure used in existing projects, and thus avoid projects mass update Note: the following components have been removed from ARM original delivery (as not used in ST packages) - CMSIS_EW2018.pdf - .gitattributes - .gitignore - \Device - \CMSIS - \CoreValidation - \DAP - \Documentation - \DoxyGen - \Driver - \Pack - \RTOS\CMSIS_RTOS_Tutorial.pdf - \RTOS\RTX - \RTOS\Template - \RTOS2\RTX - \Utilities - All ARM/GCC projects files are deleted from \DSP, \RTOS and \RTOS2 Change-Id: Ia026c3f0f0d016627a4fb5a9032852c33d24b4d3 --- docs/RTOS2/html/index.html | 181 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 181 insertions(+) create mode 100644 docs/RTOS2/html/index.html (limited to 'docs/RTOS2/html/index.html') diff --git a/docs/RTOS2/html/index.html b/docs/RTOS2/html/index.html new file mode 100644 index 0000000..97e96b7 --- /dev/null +++ b/docs/RTOS2/html/index.html @@ -0,0 +1,181 @@ + + + + + +Main Page +CMSIS-RTOS2: Main Page + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-RTOS2 +  Version 2.1.3 +
+
Real-Time Operating System: API and RTX Reference Implementation
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
CMSIS-RTOS2 Documentation
+
+
+

The CMSIS-RTOS v2 (CMSIS-RTOS2) provides generic RTOS interfaces for Arm® Cortex® processor-based devices. It provides a standardized API for software components that require RTOS functionality and gives therefore serious benefits to the users and the software industry:

+
    +
  • CMSIS-RTOS2 provides basic features that are required in many applications.
  • +
  • The unified feature set of the CMSIS-RTOS2 reduces learning efforts and simplifies sharing of software components.
  • +
  • Middleware components that use the CMSIS-RTOS2 are RTOS agnostic and are easier to adapt.
  • +
  • Standard project templates of the CMSIS-RTOS2 may be shipped with freely available CMSIS-RTOS2 implementations.
  • +
+
Note
The CMSIS-RTOS API Version 2 defines a minimum feature set. Implementations with extended features may be provided by the RTOS vendors.
+

The CMSIS-RTOS2 manages the resources of the microcontroller system and implements the concept of parallel threads that run concurrently.

+

Applications frequently require several concurrent activities. CMSIS-RTOS2 can manage multiple concurrent activities at the time when they are needed. Each activity gets a separate thread which executes a specific task and this simplifies the overall program structure. The CMSIS-RTOS2 system is scalable and additional threads can be added easily at a later time. Threads have a priority allowing faster execution of time-critical parts of a user application.

+

The CMSIS-RTOS2 offers services needed in many real-time applications, for example, periodical activation of timer functions, memory management, and message exchange between threads with time limits.

+

The CMSIS-RTOS2 addresses the following new requirements:

+
    +
  • Dynamic object creation no longer requires static memory, static memory buffers are now optional.
  • +
  • Support for Armv8-M architecture that provides a secure and non-secure state of code execution.
  • +
  • Provisions for message passing in multi-core systems.
  • +
  • Full support of C++ run-time environments.
  • +
  • C interface which is binary compatible across ABI compatible compilers.
  • +
+

As a consequence of these requirements the CMSIS-RTOS2 has the following fundamental modifications:

+
    +
  • The functions osXxxxNew replace osXxxxCreate functions; osXxxxNew and osXxxxDelete create and destroy objects.
  • +
  • The C function main is no longer started as a thread (this was an optional feature in CMSIS-RTOS v1).
  • +
  • Functions that return osEvent have been replaced.
  • +
+

CMSIS-RTOS2 provides an translation layer to CMSIS-RTOS v1. It is possible to intermix CMSIS-RTOS C API v2 and CMSIS-RTOS C API v1 within the same application. Over time, you may migrate to the new API as explained in Migration from API v1 to API v2.

+

CMSIS-RTOS2 is not POSIX compliant, but has provisions to enable a C++11/C++14 interface.

+

The following sections provide further details about CMSIS-RTOS2 and the RTX reference implementation.

+ +
+

CMSIS-RTOS2 in ARM::CMSIS Pack

+

The following files relevant to CMSIS-RTOS2 are present in the ARM::CMSIS Pack directories:

+ + + + + + + + + + + + + +
Directory Content
CMSIS/Documentation/RTOS2 This documentation
CMSIS/RTOS2/Include cmsis_os2.h header file
CMSIS/RTOS2/RTX CMSIS-RTOS2 reference implementation based on RTX version 5
CMSIS/RTOS2/Source Generic OS tick implementations for various processors based on OS Tick API
CMSIS/RTOS2/Template Compatibility layer to CMSIS-RTOS v1
+
+
+ + + + -- cgit