부팅 및 메모리 설계


부팅 및 메모리 설계

4장 부팅하기 부팅의 정의로는 정해진 것이 없지만, 일반적으로 1. 시스템에 전원이 들어가서 모든 초기화 작업을 마치고 펌웨어가 대기(idle)상태가 될때까지 2. 시스템에 전원이 들어가고 ARM 코어가 리셋 익셉션핸들러를 모두 처리한 다음에 본격적으로 C언어 코드로 넘어가기 직전까지 메모리는 아래와 같이 설계했습니다. text 영역: 코드가 있는 공간, 임의로 변경하면 안된다. - 리눅스 같은 거대한 운영체제를 사용하지 않을 것이므로 RTOS를 사용하는 펌웨어는 많아야 수십 KB 정도면 충분 - 익셉션 벡터 테이블을 text영역에 포함시킬 것이므로 시작 주소는 0x00000000입니다. 크기를 1MB로 설정하면 끝나는 주소는 0x000FFFFF data 영역: 초기화한 전역 변수가 있는 공간. 전역변수를 선언할 때 초기 값을 할당해서 선언하면 해당 전역 변수가 점유하는 공간은 여기에 할당 됨. BSS 영역: 초기화하지 않은 전역 변수가 있는 공간. 초기화하지 않은 전역 변수이므로 ...


#0x1F #동작모드

원문링크 : 부팅 및 메모리 설계