FreeRTOS의 Heap_2.c를 Heap_3.c로 변경하였다.

Heap_3.c는 표준 라이브러리에 있는 malloc과 free를 사용하여 heap영역의 메모리를 할당 받는다. 이 명령이 제대로 동작하려면 _sbrk_r 시스템 콜을 시스템에 맞게 구현해 주어야 한다.

malloc을 호출 하여 메모리를  요청하면 라이브러리 내부에서 _sbrk_r를 호출 하여 메모리를 요구하도록 되어 있다. _sbr_r함수는 heap_end 포인터를 가지고 있어 호출 될 때 마다 갱신 되고 heap overflow를 채크 하며 heap 포인터를 리턴 한다.

'OldStory > WORKS' 카테고리의 다른 글

main함수 없이 프로그램 짜기  (0) 2010.06.30
startup code  (0) 2010.06.29
_sbrk_r  (0) 2010.06.24
printf  (0) 2010.06.09
최적화 옵션  (0) 2010.06.08
HISR  (0) 2010.06.04
by Alnilam 2010.06.24 18:24
| 1 2 |

티스토리 툴바