mirror of
				https://github.com/FreeRTOS/FreeRTOS-Kernel.git
				synced 2025-11-04 11:09:01 +01:00 
			
		
		
		
	Update History for Version 10.6.0 (#706)
Signed-off-by: kar-rahul-aws <karahulx@amazon.com>
This commit is contained in:
		
							parent
							
								
									97050a17aa
								
							
						
					
					
						commit
						b60ab2fa14
					
				
							
								
								
									
										111
									
								
								History.txt
									
									
									
									
									
								
							
							
						
						
									
										111
									
								
								History.txt
									
									
									
									
									
								
							@ -1,5 +1,116 @@
 | 
			
		||||
Documentation and download available at https://www.FreeRTOS.org/
 | 
			
		||||
 | 
			
		||||
Changes between FreeRTOS V10.5.1 and FreeRTOS 10.6.0 released July 13, 2023
 | 
			
		||||
 | 
			
		||||
	+ Add a new MPU wrapper that places additional restrictions on unprivileged
 | 
			
		||||
	  tasks. The following is the list of changes introduced with the new MPU
 | 
			
		||||
	  wrapper:
 | 
			
		||||
 | 
			
		||||
	  1. Opaque and indirectly verifiable integers for kernel object handles:
 | 
			
		||||
	     All the kernel object handles (for example, queue handles) are now
 | 
			
		||||
	     opaque integers. Previously object handles were raw pointers.
 | 
			
		||||
	  2. Save the task context in Task Control Block (TCB): When a task is
 | 
			
		||||
	     swapped out by the scheduler, the task's context is now saved in its
 | 
			
		||||
	     TCB. Previously the task's context was saved on its stack.
 | 
			
		||||
	  3. Execute system calls on a separate privileged only stack: FreeRTOS
 | 
			
		||||
	     system calls, which execute with elevated privilege, now use a
 | 
			
		||||
	     separate privileged only stack. Previously system calls used the
 | 
			
		||||
	     calling task's stack. The application writer can control the size of
 | 
			
		||||
	     the system call stack using new configSYSTEM_CALL_STACK_SIZE config
 | 
			
		||||
	     macro.
 | 
			
		||||
	  4. Memory bounds checks: FreeRTOS system calls which accept a pointer
 | 
			
		||||
	     and de-reference it, now verify that the calling task has required
 | 
			
		||||
	     permissions to access the memory location referenced by the pointer.
 | 
			
		||||
	  5. System calls restrictions: The following system calls are no longer
 | 
			
		||||
	     available to unprivileged tasks:
 | 
			
		||||
	      - vQueueDelete
 | 
			
		||||
	      - xQueueCreateMutex
 | 
			
		||||
	      - xQueueCreateMutexStatic
 | 
			
		||||
	      - xQueueCreateCountingSemaphore
 | 
			
		||||
	      - xQueueCreateCountingSemaphoreStatic
 | 
			
		||||
	      - xQueueGenericCreate
 | 
			
		||||
	      - xQueueGenericCreateStatic
 | 
			
		||||
	      - xQueueCreateSet
 | 
			
		||||
	      - xQueueRemoveFromSet
 | 
			
		||||
	      - xQueueGenericReset
 | 
			
		||||
	      - xTaskCreate
 | 
			
		||||
	      - xTaskCreateStatic
 | 
			
		||||
	      - vTaskDelete
 | 
			
		||||
	      - vTaskPrioritySet
 | 
			
		||||
	      - vTaskSuspendAll
 | 
			
		||||
	      - xTaskResumeAll
 | 
			
		||||
	      - xTaskGetHandle
 | 
			
		||||
	      - xTaskCallApplicationTaskHook
 | 
			
		||||
	      - vTaskList
 | 
			
		||||
	      - vTaskGetRunTimeStats
 | 
			
		||||
	      - xTaskCatchUpTicks
 | 
			
		||||
	      - xEventGroupCreate
 | 
			
		||||
	      - xEventGroupCreateStatic
 | 
			
		||||
	      - vEventGroupDelete
 | 
			
		||||
	      - xStreamBufferGenericCreate
 | 
			
		||||
	      - xStreamBufferGenericCreateStatic
 | 
			
		||||
	      - vStreamBufferDelete
 | 
			
		||||
	      - xStreamBufferReset
 | 
			
		||||
	     Also, an unprivileged task can no longer use vTaskSuspend to suspend
 | 
			
		||||
	     any task other than itself.
 | 
			
		||||
 | 
			
		||||
	  We thank the following people for their inputs in these enhancements:
 | 
			
		||||
	    - David Reiss of Meta Platforms, Inc.
 | 
			
		||||
	    - Lan Luo, Xinhui Shao, Yumeng Wei, Zixia Liu, Huaiyu Yan and Zhen Ling
 | 
			
		||||
	      of School of Computer Science and Engineering, Southeast University,
 | 
			
		||||
	      China.
 | 
			
		||||
	    - Xinwen Fu of Department of Computer Science, University of
 | 
			
		||||
	      Massachusetts Lowell, USA.
 | 
			
		||||
	    - Yuequi Chen, Zicheng Wang, Minghao Lin of University of Colorado
 | 
			
		||||
	      Boulder, USA.
 | 
			
		||||
	+ Add Cortex-M35P port. Contributed by @urutva.
 | 
			
		||||
	+ Add embedded extension (RV32E) support to the IAR RISC-V port.
 | 
			
		||||
	+ Add ulTaskGetRunTimeCounter and ulTaskGetRunTimePercent APIs. Contributed by
 | 
			
		||||
	  @chrisnc.
 | 
			
		||||
	+ Add APIs to get the application supplied buffers from statically
 | 
			
		||||
	  created kernel objects. The following new APIs are added:
 | 
			
		||||
	  - xTaskGetStaticBuffers
 | 
			
		||||
	  - xQueueGetStaticBuffers
 | 
			
		||||
	  - xQueueGenericGetStaticBuffers
 | 
			
		||||
	  - xSemaphoreGetStaticBuffer
 | 
			
		||||
	  - xEventGroupGetStaticBuffer
 | 
			
		||||
	  - xStreamBufferGetStaticBuffers
 | 
			
		||||
	  - xMessageBufferGetStaticBuffers
 | 
			
		||||
	  These APIs enable the application writer to obtain static buffers from
 | 
			
		||||
	  the kernel object and free/reuse them at the time of deletion. Earlier
 | 
			
		||||
	  the application writer had to maintain the association of static buffers
 | 
			
		||||
	  and the kernel object in the application. Contributed by @Dazza0.
 | 
			
		||||
	+ Add Thread Local Storage (TLS) support using picolibc function. Contributed
 | 
			
		||||
	  by @keith-packard.
 | 
			
		||||
	+ Add configTICK_TYPE_WIDTH_IN_BITS to configure TickType_t data type. As a result,
 | 
			
		||||
	  the number of bits in an event group also increases with big data type. Contributed
 | 
			
		||||
	  by @Hadatko.
 | 
			
		||||
	+ Update eTaskGetState and uxTaskGetSystemState to return eReady for pending ready
 | 
			
		||||
	  tasks. Contributed by @Dazza0.
 | 
			
		||||
	+ Update heap_4 and heap_5 to add padding only if the resulting block is not
 | 
			
		||||
	  already aligned.
 | 
			
		||||
	+ Fix the scheduler logic in a couple of places to not preempt a task when an
 | 
			
		||||
	  equal priority task becomes ready.
 | 
			
		||||
	+ Add macros used in FreeRTOS-Plus libraries. Contributed by @Holden.
 | 
			
		||||
	+ Fix clang compiler warnings. Contributed by @phelter.
 | 
			
		||||
	+ Add assertions to ARMv8-M ports to detect when FreeRTOS APIs are called from
 | 
			
		||||
	  interrupts with priority higher than the configMAX_SYSCALL_INTERRUPT_PRIORITY.
 | 
			
		||||
	  Contributed by @urutva.
 | 
			
		||||
	+ Add xPortIsInsideInterrupt API to ARM_CM0 ports.
 | 
			
		||||
	+ Fix build warning in MSP430X port when large data model is used.
 | 
			
		||||
	+ Add the ability to use Cortex-R5 port on the parts without FPU.
 | 
			
		||||
	+ Fix build warning in heap implementations on PIC24/dsPIC.
 | 
			
		||||
	+ Update interrupt priority asserts for Cortex-M ports so that these do not fire
 | 
			
		||||
	  on QEMU which does not implement PRIO bits.
 | 
			
		||||
	+ Update ARMv7-M ports to ensure that kernel interrupts run at the lowest priority.
 | 
			
		||||
	  configKERNEL_INTERRUPT_PRIORITY is now obsolete for ARMv7-M ports and brings
 | 
			
		||||
	  these ports inline with the newer ARMv8-M ports. Contributed by @chrisnc.
 | 
			
		||||
	+ Fix build issue in POSIX GCC port on Windows Subsystem for Linux (WSL). Contributed
 | 
			
		||||
	  by @jacky309.
 | 
			
		||||
	+ Add portMEMORY_BARRIER to Microblaze port. Contributed by @bbain.
 | 
			
		||||
	+ Add portPOINTER_SIZE_TYPE definition for ATmega port. Contributed by @jputcu.
 | 
			
		||||
	+ Multiple improvements in the CMake support. Contributed by @phelte and @cookpate.
 | 
			
		||||
 | 
			
		||||
Changes between FreeRTOS V10.5.0 and FreeRTOS V10.5.1 released November 16 2022
 | 
			
		||||
	+ Updated the kernel version in manifest and SBOM
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user