mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-04-19 21:11:57 -04:00
Earlier the System Call entry from an unprivileged task looked like: 1. SVC for entering system call. 2. System call implementation. 3. SVC for exiting system call. Now, the system call entry needs to make only one system call and everything else is handled internally. This PR also makes the following small changes: 1. Add one struct param for system calls with 5 parameters. This removes the need for special handling for system calls with 5 parameters. 2. Remove raise privilege SVC when MPU wrapper v2 is used. 3. Add additional run time parameter checks to MPU wrappers for xTaskGenericNotify and xQueueTakeMutexRecursive APIs. These changes are tested on the following platforms: 1. STM32H743ZI (Cortex-M7) 2. STM32L152RE (Cortex-M3) 3. Nuvoton M2351 (Cortex-M23) 4. NXP LPC55S69 (Cortex-M33) |
||
---|---|---|
.. | ||
ARMClang | ||
ARMv8M | ||
BCC/16BitDOS | ||
CCS | ||
CodeWarrior | ||
Common | ||
GCC | ||
IAR | ||
Keil | ||
MemMang | ||
MikroC/ARM_CM4F | ||
MPLAB | ||
MSVC-MingW | ||
oWatcom/16BitDOS | ||
Paradigm/Tern_EE | ||
Renesas | ||
Rowley | ||
RVDS | ||
SDCC/Cygnal | ||
Softune | ||
Tasking/ARM_CM4F | ||
ThirdParty | ||
WizC/PIC18 | ||
CMakeLists.txt | ||
readme.txt |
Each real time kernel port consists of three files that contain the core kernel components and are common to every port, and one or more files that are specific to a particular microcontroller and/or compiler. + The FreeRTOS/Source/Portable/MemMang directory contains the five sample memory allocators as described on the https://www.FreeRTOS.org WEB site. + The other directories each contain files specific to a particular microcontroller or compiler, where the directory name denotes the compiler specific files the directory contains. For example, if you are interested in the [compiler] port for the [architecture] microcontroller, then the port specific files are contained in FreeRTOS/Source/Portable/[compiler]/[architecture] directory. If this is the only port you are interested in then all the other directories can be ignored.