文章预览
有读者问了这么一个问题: FreeRTOS可以创建任务,也可以删除任务,它是动态分配的内存吗? xTaskCreate(LED_Task, "LED_Task", 128, NULL, 6, NULL); 这个问题如果要细说,牵涉到的知识点比较多,下面挑几个 重要 相关的内容来解答这个问题。 内存静态和动态分配 内存分配一般分为:静 态 和 动态 分配。 1、静态分配内存 什么叫静态分配内存? 简单来说,就是在编译的时候就分配的内存。你可以理解为芯片上电,指定的某区域(地址)内存就被占用了。 一般有几种情况,比如, 启动分配堆栈: Stack_Size EQU 0x400 定义一个静态变量,这个就是最好理解的一个例子: static int a; 定义一个全局变量/数组等: int char; 2、动态分配内存 什么叫动态分配内存? 与静态分配对应,动态就是不确定在某个时刻分配的内存。 最常见的就是某个函数定义一个局部变量,
………………………………