デマンドページング

仮想メモリをサポートするオペレーティングシステムでは、ELF ファイルをファイルのロード処理を行うアドレス空間にマップすることで、ELF ファイルをロードできます。 ファイルにマップされているページ内の仮想アドレスにアクセスすると、オペレーティングシステムによって、そのペジがディスクからロードされます。 この方法で使用する ELF ファイルは、特定の形式に準拠している必要があります。

デマンドページングモードを有効にするには、--paged コマンドラインオプションを使用します。 これにより、効率的にデマンドページングを行うことができる ELF ファイルが生成されます。

Note

--sysv オプションで生成された ELF ファイルは、既にデマンドページングに準拠しています。 --arm_linux を使用しても、--sysv を指定したことになります。

ELF ファイルの基本的な制約を以下に示します。

--paged をオンにすると、以下のようになります。

Show/hide

これは、デマンドページングを行うスキャッタファイルの例です。

LR1 GetPageSize() + SizeOfHeaders()
{
    ER_RO +0
    {
        *(+RO)
    }
    ER_RW +GetPageSize()
    {
        *(+RW)
    }
    ER_ZI +0
    {
        *(+ZI)
    }
}

Show/hide関連項目

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