인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

손 영달님의 프로필 이미지

작성한 질문수

FreeRTOS 프로그래밍

태스크 스택메모리의 정적할당

태스크 스택 관련 질문입니다.

작성

·

204

0

 
#define configSUPPORT_STATIC_ALLOCATION 1 #define configSUPPORT_DYNAMIC_ALLOCATION 1
 
이와 같이 태스크 스택의 방식을 static, dynamic 모두 1로 설정하게 되면 태스크 스택은 어떻게 잡히는지요?

답변 1

0

홍영기님의 프로필 이미지
홍영기
지식공유자

손영달님! 안녕하세요~~

아래와 같이 FreeRTOSConfig.h( 혹은 FreeRTOSConfig_base.h) 을 통해 정적과 동적 상수 선언을 동시에 활성화할 경우

#define configSUPPORT_STATIC_ALLOCATION 1

#define configSUPPORT_DYNAMIC_ALLOCATION 1

 

xTaskCreateStatic 함수를 이용하여 태스크를 생성하였다면 태스크 스택과 TCB정적으로 생성되고, 

xTaskCreate 함수를 이용하여 태스크를 생성하였다면 태스크 스택과 TCB 가 동적으로 생성됩니다.

자세한 내용은, 커널소스를 참조하세요

소스참조 -> .../01_TASKMAN/Middlewares/Third_Party/FreeRTOS/Source/tasks.c