1.FreeRTOS 源码中有两个文件夹,4个HTML格式的网页和一个txt文档,HTML网页和txt文档看名字就知道是什么东西,重点在于FreeRTOS和FreeRTOS-Plus,这两个文件夹就是 FreeRTOS的源码。
1. 打开FreeRTOS文件夹
● Demo 文件夹
Demo 文件夹里面就是 FreeRTOS 的相关例程FreeRTOS 针对不同的 MCU 提供了非常多的 Demo ,其中就有 ST 的 F1 、 F4 和 F7 的相关例程。
● License 文件夹
这个文件夹里面就是相关的许可信息。
● Source 文件夹
FreeRTOS本身。

include 文件夹是一些头文件,移植的时候是需要,下面的.C 文件是 FreeRTOS 的源码文件了,移植的时需要。 portable这个文件夹,FreeRTOS 是个系统,是个纯软件,它怎样和硬件联系在一起呢?软件到硬件中间必须有一个桥梁,portable 文件夹里面的东西就是 FreeRTOS系统和具体的硬件之间的连接桥梁!不同的编译环境,不同的 MCU ,其桥梁应该是不同的,打开portable 文件夹

上图 中可以看出 FreeRTOS 针对不同的编译环境和 MCU 都有不同的“桥梁”,以 MDK 编译环境下的 STM32F103 为例。 MemMang 这个文件夹跟内存管理相关的,移植的时是必须的。Keil 文件夹里面的东西也是必须的,但是我们打开Keil 文件夹以后里面只有一个文件: See-also-the-RVDS-directory.txt 。 看文件名字“ See-also-the-RVDS-directory”,意思就是参考 RVDS文件夹里面的东西!
再打开 RVDS文件夹
RVDS 文件夹针对不同的架构的 MCU做了详细的分类,STM32F103就参考ARM_CM3, 打开 ARM_CM3文件夹,
ARM_CM3有两个文件,这两个文件就是我们移植的时候所需要的
FreeRTOS-Plus 中的源码其实并不是FreeRTOS系统的源码,而是在FreeRTOS系统上另外增加的一些功能代码,比如 CLI、FAT、Trace等等。就系统本身而言,和FreeRTOS里面的一模一样的