タイプ 3 のイメージ:2 つのロード領域と連続しない実行領域

タイプ 3 のイメージはタイプ 2 のイメージと似ていますが、このイメージでは 1 つのロード領域が 2 つのルートロード領域に分割されます。

Figure 5. 単純タイプ 3 のイメージ

To view this graphic, your browser must support the SVG format. Either install a browser with native support, or install an appropriate plugin such as Adobe SVG Viewer.


このタイプのイメージを作成するには以下のコマンドを使用します。

armlink --split --ro_base 0x8000 --rw_base 0xE000

Show/hideロードビュー

ロードビューでは、最初のロード領域が RO 出力セクションで構成され、2 番目のロード領域が RW 出力セクションで構成されます。 ロード時には ZI 出力セクションは存在しません。 ZI 出力セクションは、実行前にイメージファイル内の出力セクションの記述を使用して作成されます。

Show/hide実行ビュー

実行ビューでは、最初の実行領域に RO 出力セクションが、2 番目の実行領域に RW 出力セクションと ZI 出力セクションが含まれます。

RO 領域の実行アドレスはロードアドレスと同じであるため、RO 出力セクションの内容をロードアドレスから実行アドレスに移動またはコピーする要はありません。 RO 領域と RW 領域はどちらもルート領域となります。

また、RW 領域の実行アドレスもロードアドレスと同じであるため、RW 出力セクションの内容はロードアドレスから実行アドレスに移動されません ただし、ZI 出力セクションは実行時に作成され、RW 領域と隣接して配置されます。

ロードアドレスと実行アドレスは、以下のリンカオプションを使用して指定します。

--split

RO 出力セクションおよび RW 出力セクションを含むデフォルトの 1 つのロード領域が、以下の 2 つのルートロード領域に分割されます。

  • 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 領域(ルート領域など)のロードアドレスと実行アドレスの両方が指定されます。

Show/hide関連項目

Copyright © 2010-2012 ARM. All rights reserved.ARM DUI 0474GJ
Non-ConfidentialID051612