3.4.3. 타입 3, 로드 영역 두 개와 연속되지 않는 출력 영역

이러한 타입의 이미지는 단일한 로드 영역이 두 개의 로드 영역으로 분할된 점을 제외하면 타입 2의 이미지와 비슷합니다(Figure 3.5 참조).

Figure 3.5. 단순 타입 3 이미지

단순 타입 3 이미지

이 타입의 이미지에는 다음 명령을 사용하십시오.

armlink --split --ro-base 0x8000 --rw-base 0xE000

로드 뷰

로드 뷰에서 첫 번째 로드 영역은 RO 출력 섹션으로 구성되고 두 번째 로드 영역은 RW 출력 섹션으로 구성됩니다. 로드 타임에 ZI 출력 섹션은 없습니다. ZI 출력 섹션은 이미지 파일에 포함된 출력 섹션의 설명을 사용하여 실행 전에 만들어집니다.

실행 뷰

실행 뷰에서 첫 번째 실행 영역에는 RO 출력 섹션이 포함되고 두 번째 실행 영역에는 RW 및 ZI 출력 섹션이 포함됩니다.

RO 영역의 실행 주소는 로드 주소와 같으므로 RO 출력 섹션의 내용을 이동하거나 로드 주소에서 실행 주소로 복사할 필요가 없습니다. RO와 RW 실행 영역은 모두 루트 영역입니다.

RW 영역의 실행 주소도 로드 주소와 같으므로 RW 출력 섹션의 내용이 로드 주소에서 실행 주소로 이동되지 않습니다. 그러나 ZI 출력 섹션은 실행이 시작되기 전에 만들어져 RW 영역 뒤에 놓입니다.

다음 링커 옵션을 사용하여 로드 및 실행 주소를 지정합니다.

--split

하나의 기본 로드 영역(RO 및 RW 출력 섹션을 모두 포함)을 두 개의 로드 영역(각각 RO 출력 섹션과 RW 출력 섹션을 포함)으로 분할함으로써 --ro-base--rw-base를 사용하여 두 가지 주소가 별도로 배치될 수 있도록 합니다.

--ro-base address

RO 섹션을 포함하는 영역의 로드 및 실행 주소를 4바이트로 정렬된 address(예를 들어, ROM에서 첫 번째 위치의 주소)에 설정하도록 armlink에 지시합니다. --ro-base 옵션을 사용하여 주소를 지정하지 않으면 armlink에서 기본값 0x8000을 사용합니다.

--rw-base address

RW 출력 섹션을 포함하는 영역의 실행 주소를 4바이트로 정렬된 address에 설정하도록 armlink에 지시합니다. 이 옵션을 --split과 함께 사용하면 RW 영역(루트 영역)의 로드 및 실행 주소가 모두 지정됩니다.

Copyright © 2002-2006 ARM Limited. All rights reserved.ARM DUI 0206GK
Non-Confidential