linuxのメモリー

linuxにも32bitと64bitというものがある386とx64ですな。

これらはrpmなんかをみればあ32bit用と64bit用というのがわかる。一番の違いはなんだろうか?それは使える論理アドレス空間のことである。

詳しくみていこう。32bitの場合はメモリー4Gのうちカーネルが仕様する領域をlowメモリー,ユーザーが使用する領域をハイメモリーとよぶ。大体カーネルが1gで残りはユーザーが使うのに3gを使う。それに対して64bitの場合はこのようなハイとかロウのメモリー区別はない。32bitの場合はこの辺うまくメモリー調節しないといけない。lowメモリーをユーザーがつかいすぎたりするとカーネルの動作が不安定になり、oomkillerが活動したりする。oomkillertとはカーネルがメモリー不足をおぎなうため消費するメモリーを無差別に殺して行く。

以上のことから、64bitをつかったほうがいいですね。でも、パスとか微妙に名前がちがかったりするので注意が必要ですね。32bitでもPAE版をつかえばこの問題はなくなるのかな?