領域の割り当て、セレクタ、および優先度の動作を示す next_fit アルゴリズムの例

ここでは、sections.oRO-CODE セクションを例に、next_fit の配置アルゴリズムを説明します。

入力セクションのプロパティと順序を以下の表に示します。

Table 11. 入力セクションのプロパティ

名前サイズ
sec10x4
sec20x4
sec30x4
sec40x4
sec50x4
sec60x4

この例で使用するスキャッタファイルは次のとおりです。

LR 0x100
{
  ER_1 0x100 0x20
  {
     .ANY1(+RO-CODE)
  }

  ER_2 0x200 0x20
  {
     .ANY2(+RO)
  }

  ER_3 0x300 0x20
  {
     .ANY3(+RO)
  }
}

Note

この例では、--any_contingency を無効にしています。

next_fit が他のアルゴリズムと異なるのは、一杯であると見なされた領域が再度考慮されないという点です。 この例からは、セレクタの優先順位と限定の相互作用も確認できます。この点はすべてのアルゴリズムに共通です。

    Execution Region ER_1 (Base: 0x00000100, Size: 0x00000014, Max: 0x00000020, ABSOLUTE)

    Base Addr    Size         Type   Attr      Idx    E Section Name        Object

    0x00000100   0x00000014   Code   RO            1    sec1                sections.o


    Execution Region ER_2 (Base: 0x00000200, Size: 0x0000001c, Max: 0x00000020, ABSOLUTE)

    Base Addr    Size         Type   Attr      Idx    E Section Name        Object

    0x00000200   0x00000010   Code   RO            3    sec3                sections.o
    0x00000210   0x00000004   Code   RO            4    sec4                sections.o
    0x00000214   0x00000004   Code   RO            5    sec5                sections.o
    0x00000218   0x00000004   Code   RO            6    sec6                sections.o


    Execution Region ER_3 (Base: 0x00000300, Size: 0x00000014, Max: 0x00000020, ABSOLUTE)

    Base Addr    Size         Type   Attr      Idx    E Section Name        Object

    0x00000300   0x00000014   Code   RO            2    sec2                sections.o

この例では、以下のようになります。

Show/hide関連項目

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