2009年9月30日水曜日

FreeBSDで利用可能なスワップ領域について

FreeBSDで利用可能なスワップ領域は、HDDから割り当てたスワップ領域がどれほど大きくても、デフォルトで7GBまで。
これは、スワップメタ情報を保持するための KVM 量が制限されているため。
(デフォルトでは32MBで、このとき扱えるスワップの上限が7GB)

これを超えてスワップ領域を使用しようとすると、カーネルが以下のようなエラーを吐く。
"swap zone exhausted, increase kern.maxswzone" (See, /usr/src/sys/vm/swap_pager.c:1715)

制限値は、sysctl の kern.maxswzone値で確認出来る。
変更は、以下のいずれかの方法で可能。
  1. カーネルオプションで、VM_SWZONE_SIZE_MAXに大きな値を指定し、カーネルリコンパイル
  2. loader.confで、kern.maxswzoneに大きな値を指定し、リブート
指定する値は、「スワップ領域に利用したい容量 * 32MB/7GB」でおおむねOK。
より正しい値を算出するには、/usr/src/sys/vm/swap_pager.c:321 swap_pager_init を参照の程。

※source ver : FreeBSD 7.2 Release-p3

2009年9月10日木曜日

Blogger始め

普段書いている記事を、技術的な考察とただの日記的なものに分けるべくBloggerにお引っ越し(というか追加)
ここでは、技術的な考察について書いていくつもり。
Bloggerの使い方はまだ勉強中、よく意味がわからない設定が多いのだよね。中途半端に日本語化しないで、英語のまま出してくれれば良いのに。