検索まずは、検索! Index人気の20件最新の20件2018-12-022018-01-092017-05-072017-04-252016-05-012015-02-242014-01-032013-06-252012-12-302012-12-292012-07-272012-07-162012-02-052012-01-292011-10-012011-09-18
|
メモリマップ
目次
メモリマップとは
メモリの使用状況を、細かく表にしたものです。
BIOSが使用する場所(予約されている場所)などを知っておかないと意図しない動作をしてしまうかもしれませんし、OSもどのように使ったかを把握しておかないと、場所が重なってしまうこともあります。
正確なメモリマップはBIOSで調べる必要があります。
調べても、表示されない領域があったりするので、安全のために空き領域だけを使うようにするといいでしょう。
一般的なメモリマップ
0x0000 0000 ~ 0x0000 04ffはBIOS用やリアルモード用であるため、プロテクトモード時は不要な領域になる。
ただし、再びリアルモードに戻ったりすると、使うことがあるかもしれない。
0x7c00~は通常、ブートセクタが読み込まれる場所。
FDDブートだと、0x7c00~0x7dffに読み込まれる。
| 開始アドレス | サイズ | 説明 |
|---|
| 0x0000 0000 | 768B | 0x300 | リアルモード用割り込みテーブル | | 0x0000 0300 | 256B | 0x100 | BIOSスタック領域 | | 0x0000 0400 | 256B | 0x100 | BIOSデータ領域 | | 0x0000 0500 | 654,080B | 0x9FB00 | 空き領域 | | 640KiBの壁 | | 0x000a 0000 | 131,072B | 0x20000 | VRAM | | 0x000c 0000 | 32,767B | 0x8000 | ビデオBIOS ROM(EGA/VGA) | | 0x000c 8000 | 32,767B | 0x8000 | 拡張BIOS | | 0x000d 0000 | 65,536B | 0x10000 | 拡張BIOS | | 0x000e 0000 | 65,536B | 0x10000 | システムBIOS | | 0x000f 0000 | 65,536B | 0x10000 | システムBIOS | | 1MiBの壁 | | 0x0001 0000 | 可変 | 可変 | 空き領域 | | 以下はSun VBでの結果なため実機では未保証 | | 可変 | 64KB | 0xFFFF | ACPI領域 | | ただし以下は実機でもあると思われる | | 0xFFFC0000 | 0x40000 | 256KB | 予約領域 |
e820で調べたメモリマップ
QEMU(256MiB)
| 開始アドレス | サイズ | 説明 |
|---|
| 0x0000 0000 | 654,336B | 0x9fc00 | 空き領域 | | 0x0009 fc00 | 1,024B | 0x400 | 予約済み | | 640KiBの壁 | | 0x000a 0000 | 294,912B | 0x48000 | 不明(表示されず) | | 0x000e 8000 | 98,304B | 0x18000 | 予約済み | | 1MiBの壁 | | 0x0010 0000 | 654,336B | 0x0fef0000 | 空き領域 | | 0x0fff 0000 | | 0x10000 | ACPI領域 | | 256MiB | | 0xfffc 0000 | 262,144B | 0x40000 | 予約済み |
QEMU(512MiB)
| 開始アドレス | サイズ | 説明 |
|---|
| 0x0000 0000 | 654,336B | 0x9fc00 | 空き領域 | | 0x0009 fc00 | 1,024B | 0x400 | 予約済み | | 640KiBの壁 | | 0x000a 0000 | 294,912B | 0x48000 | 不明(表示されず) | | 0x000e 8000 | 98,304B | 0x18000 | 予約済み | | 1MiBの壁 | | 0x0010 0000 | 535,756,800B | 0x1fef0000 | 空き領域 | | 0x1fff 0000 | 65,536B | 0x10000 | ACPI領域 | | 512MiB | | 0xfffc 0000 | 262,144B | 0x40000 | 予約済み |
実機(512MiB)
| 開始アドレス | サイズ | 説明 |
|---|
| 0x0000 0000 | 655,360B | 0xa0000 | 空き領域 | | 640KiBの壁 | | 0x000a 0000 | 327,680B | 0x50000 | 不明(表示されず) | | 0x000f 0000 | 65,536B | 0x10000 | 予約済み | | 1MiBの壁 | | 0x0010 0000 | 534,437,888B | 0x1fdae000 | 空き領域 | | 0x1fea e000 | 335,872B | 0x52000 | 予約済み | | 0x1ff0 0000 | 1,048,576B | 0x100000 | 予約済み | | 512MiB | | 0xffb0 0000 | 5,242,880B | 0x500000 | 予約済み |
実機(640MiB)
| 開始アドレス | サイズ | 説明 |
|---|
| 0x0000 0000 | 649,216B | 0x9e800 | 空き領域 | | 0x0009 e800 | 6,144B | 0x1800 | 予約済み | | 640KiBの壁 | | 0x000a 0000 | 802,816B | 0xc4000 | 不明(表示されず) | | 0x000c e000 | 8,192B | 0x2000 | 予約済み | | 0x000d 0000 | 65,536B | 0x10000 | 不明(表示されず) | | 0x000e 0000 | 131,072B | 0x20000 | 予約済み | | 1MiBの壁 | | 0x0010 0000 | 668,925,952B | 0x27df0000 | 空き領域 | | 0x27ef 0000 | 61,440B | 0xf000 | ACPI領域 | | 0x27ef f000 | 4,096B | 0x1000 | ACPI NVS領域 | | 0x27f0 0000 | 524,288B | 0x80000 | 空き領域 | | 0x27f8 0000 | 524,288B | 0x80000 | 予約済み | | 640MiB | | 0xff80 0000 | 4,194,304B | 0x400000 | 予約済み | | 0xffc0 0000 | 4,194,304B | 0x400000 | 予約済み |
実機(2GiB)
割と新しいマシンなので、すべてサイズが4KiB単位になっているのがいい感じです。
最初の1MiBまでのコンベンショナルメモリ領域が、0x8f000までしか無いのが痛い。。
メモリの後ろの方はやたらと細々していて面倒くさいです。
| 開始アドレス | サイズ | 説明 |
|---|
| 0x0000 0000 | 585,728B | 0x8f000 | 空き領域 | | 0x0008 f000 | 69,632B | 0x11000 | 予約済み | | 640KiBの壁 | | 0x000a 0000 | 262,144B | 0x40000 | 不明(表示されず) | | 0x000e 0000 | 131,072B | 0x20000 | 予約済み | | 1MiBの壁 | | 0x0010 0000 | 2,127,847,424B | 0x7ed46000 | 空き領域 | | 0x7ee4 6000 | 7,929,856B | 0x79000 | ACPI NVS領域 | | 0x7eeb f000 | 15,486,976B | 0xec5000 | 空き領域 | | 0x7fd8 4000 | 32,768B | 0x8000 | 予約済み | | 0x7fd8 c000 | 647,168B | 0x9e000 | 空き領域 | | 0x7fe2 a000 | 20,480B | 0x5000 | 予約済み | | 0x7fe2 f000 | 503,808B | 0x7b000 | 空き領域 | | 0x7fea a000 | 8,192B | 0x2000 | ACPI領域 | | 0x7fea c000 | 278,528B | 0x44000 | ACPI NVS領域 | | 0x7fef 0000 | 12,288B | 0x3000 | ACPI領域 | | 0x7fef 3000 | 4,096B | 0x1000 | 空き領域 | | 0x7fef 4000 | 45,056B | 0xb000 | ACPI領域 | | 0x7fef f000 | 4,096B | 0x1000 | 空き領域 | | 0x7ff0 0000 | 1,048,576B | 0x100000 | 予約済み | | 2GiB | | 0xfff0 0000 | 1,048,576B | 0x100000 | 予約済み |
関連リンク
|
|