2x2 GiBメモリースティックを取り付けました。 grubブートメニューから実行すると
これを確認しました。 memtest86ではエラーは報告されていません。memtest86
ただし、実行中のUbuntu 10.04システムで使用可能なメモリをどのように確認しても、約3.2GiBしか報告されません。
cat /proc/meminfo
== 3320132KBSystem Monitor
== 3.2GiBhtop
== 3242MBfree -m
== 3242MB
誰が私を持っていますか?失われたメモリ?
更新:私はただダブル- 同じハードウェアから別のバージョンのUbuntu 10.04で起動しました(緊急事態に備えて数ヶ月前にインストールしたことを忘れました):).... by System Monitor
...
/var/log/messages
に最新情報を投稿しました。http://pastebin.ubuntu.com/629246/
答え1
32ビットアドレス空間は、4GBのアドレス空間があることを意味します。理想的には、カーネルはすべての物理メモリ、現在のタスクのすべてのメモリ、および独自のメモリの両方をマッピングできるようにしたいです。物理メモリ自体が利用可能な4GBをすべて占有しても機能しません。したがって、物理メモリは下位ビットメモリと上位ビットメモリに分けられ、下位ビットメモリは常にマッピングされ、使用時には上位ビットメモリをマッピングする必要があります。パッチ付きカーネルを実行しない限り、ix86アーキテクチャでは、128MBのアドレス空間はカーネルコードとデータ構造専用で、896MBはマッピングされた物理メモリ(合計1GB)専用です。
アドレス空間が合計メモリよりも大きくない場合のメモリ管理の複雑さの背景知識:
カーネルログの抜粋:
BIOS-provided physical RAM map:
BIOS-e820: 0000000000000000 - 000000000009f800 (usable)
BIOS-e820: 000000000009f800 - 00000000000a0000 (reserved)
BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
BIOS-e820: 0000000000100000 - 00000000cdce0000 (usable)
BIOS-e820: 00000000cdce0000 - 00000000cdce3000 (ACPI NVS)
BIOS-e820: 00000000cdce3000 - 00000000cdcf0000 (ACPI data)
BIOS-e820: 00000000cdcf0000 - 00000000cdd00000 (reserved)
BIOS-e820: 00000000d0000000 - 00000000e0000000 (reserved)
BIOS-e820: 00000000fec00000 - 0000000100000000 (reserved)
BIOS-e820: 0000000100000000 - 0000000130000000 (usable)
2404MB HIGHMEM available.
887MB LOWMEM available.
Zone PFN ranges:
DMA 0x00000000 -> 0x00001000
Normal 0x00001000 -> 0x000377fe
HighMem 0x000377fe -> 0x000cdce0
これには887MBの低メモリがあります。理論上、最大896MBから数MBのDMAバッファ(ハードウェアデバイスとの通信に使用されるメモリ領域)を引いたものです。
物理メモリでは、3328MBは4GB未満のアドレスにマッピングされ、768MBは4GB以上のアドレス(範囲0x100000000〜0x130000000)にマッピングされます。この768MBにはアクセスできません。これは、3242 MB(4096 MB RAM - アクセスできない768 MB - 9 MB DMAバッファ - カーネル自体がコードとデータに使用する75 MB)しか使用できない理由を示しています。 BIOSが一部のRAMを4GB表示以上にマッピングする理由はわかりませんが、データポイントとしてRAMも0x100000000–0x130000000にマッピングする4GB RAMを搭載したPCでこの記事を公開しています。
4GB以上の物理メモリをマッピングするために必要PAE。 PAEはわずかなパフォーマンスオーバーヘッドを引き起こすため(特にメモリマネージャにはより大きなデータ構造が必要です)、システム的にはアクティブではありません。デフォルトのUbuntuカーネルはPAEサポートなしでコンパイルされます。得る-generic-pae
コア 最大64GBのRAMにアクセスできます。
TL、DR:Linuxが期待どおりに動作しています。ファームウェアはあまり役に立ちません。 PAEサポートカーネルを入手してください。
答え2
おそらくUbuntuアーキテクチャがi386(32ビット版)である可能性があります。実行してみるとどのような結果が出ますかuname -a
?