FreeRTOS 10.3.0正式发布,源代码迁到Github


FreeRTOS 10.3.0正式发布,源代码迁到Github

FreeRTOS

2020年2月13日FreeRTOS 作者Richrd Barry 通过电子邮件宣布,MIT license 的开源软件FreeRTOS V10.3.0正式发布,新版本包括支持ARM v7-M 和 ARM v8-M内核MPU移植,扩展支持IAR 编译器和IDE 的RISC-V处理器架构移植, 以及一系统新的API 功能。开始在Github上进行更新,方便与大家互动,之前是一直在SourceForge SVN上。https://github.com/FreeRTOS

另外,FreeRTOS的作者Richard Barry将参加会展期间的演讲。uCOS的全家桶免费版将在EW2020结束后正式生效(2020.2.28号),基本都集中在EW2020前后。期盼已久的AppWizard也有望在这期间发布。不过受冠状病毒疫情影响,ew2020有可能被取消。FreeRTOS当前正在努力制作第一个LTS(Long Term Support ) 版本,也必将很受期待。

主要更新:

<strong>New and updated kernel ports:

+ Added RISC-V port for the IAR compiler.

+ Update the Windows simulator port to use a synchronous object to prevent a user reported error whereby a task continues to run for a short time after being moved to the Blocked state. Note we were not able to replicate the reported issue and it likely depends on your CPU model.

+ Correct alignment of stack top in RISC-V port when configISR_STACK_SIZE_WORDS is defined to a non zero value, which causes the interrupt stack to be statically allocated.

+ The RISC-V machine timer compare register can now be for any HART, whereas previously it was always assumed FreeRTOS was running on HART 0.

+ Update the sequence used to update the 64-bit machine timer compare register on 32-bit cores to match that suggested in RISC-V documentation.

+ Added tickless low power modes into the ARM, IAR and GCC Cortex-M0 compiler ports.

+ Updated the behaviour of the ARMv7-M MPU (Memory Protection Unit) ports to match that of the ARMv8-M ports whereby privilege escalations can only originate from within the kernel's own memory segment. Added configENFORCE_SYSTEM_CALLS_FROM_KERNEL_ONLY configuration constant.(加强对ARMv7-M和ARMv8-M内核的MPU支持)

+ Update existing MPU ports to correctly disable the MPU before it is updated.

+ Added contributed port and demo application for a T-Head (formally C-SKY) microcontroller.(对阿里平头哥芯片的支持,哈哈~)

<strong>New API functions:

+ Added the vPortGetHeapStats() API function which returns information on the heap_4 and heap_5 state.

+ Added xTaskCatchUpTicks(), which corrects the tick count value after the application code has held interrupts disabled for an extended period.

+ Added xTaskNotifyValueClear() API function.

+ Added uxTimerGetReloadMode() API function.Other miscellaneous changes:

+ Change type of uxPendedTicks from UBaseType_t to TickType_t to ensure it has the same type as variables with which it is compared to, and therefore also renamed the variable xPendingTicks.

+ Update Keil projects that use the MPU so memory regions come from linker/>

+ Added LPC51U68 Cortex-M0+ demos for GCC (MCUXpresso), Keil and IAR compilers.+ Added CORTEX_MPU_STM32L4_Discovery_Keil_STM32Cube demo.

+ Added LPC54018 MPU demo.

+ Rename xTaskGetIdleRunTimeCounter() to ulTaskGetIdleRunTimeCounter().

有兴趣的同学可以下载新版本尝试体验了!


分享到:


相關文章: