1. Introduction
This page regroups the different wiki pages dedicated to systems modules. You will find information about their concepts, how to use them and their APIs.
2. System Modules
Here is the list of the system modules:
- Memory Management
- Flash Management
- Real Time Debug
- System Clock Manager
- Low Power Management
- Trace Management
3. Background process
Some system modules are based upon a request/callback mechanism. This means that the user request an operation to the module and he is notified later on the result. The operation is not executed at user call but later.
This is possible due to the "Background process" method. The user call is here to check the feasibility of the operations and - in a different context - the operation is realized by the background process function.
The typical work flow is like this:
- The user request is analyzed - i.e.: Parameters check, states check, context check, etc.- and registered. An error code is returned to the user about the result of the request.
- The system module requests the scheduler for a future execution of its "Background Process" function. This function is in charge of the process of the concrete user operation.
- The scheduler set active the system "Background Process" function. Once the operation is achieved, the system module notifies the user with his callback.
And it can be represented as follow:
Still, for this machinery to work, the user shall implement functions. In deed, the "ProcessRequest" function is always defined in the module but its implementation shall be achieved by the user.
The content of this function will always be the same: Scheduling of the Background process function. However, you will have to adapt it to your operating system needs and specifies.
3.1. How to
TBD.