Develop and Download Open Source Software

OpenSource Downloads

7-Zip  (3,768)  
Tera Term  (1,863)  
CrystalDiskInfo  (1,753)  
HandBrake Japanese Language Version  (1,682)  
CrystalDiskMark  (840)  
FFFTP  (808)  
ffdshow  (757)  
MergeDoc  (629)  
mixfont-mplus-ipa  (619)  
10  TortoiseSVN  (517)  
11  FreeMind  (445)  
12  BathyScaphe  (421)  
13  Amateras  (380)  
14  Boookends  (375)  
15  SMPlayer  (370)  
More >>

ハウツー:自分のシステムに最適なカーネルを構築する

2007年08月20日 10:22 Federico-Kereki(2007年8月16日(木)) 1 2 3

全速前進!

 PCをサーバとして使用するのではなくデスクトップマシンとして使用する場合、応答速度を向上させるためのいくつかのオプションが用意されている。デスクトップマシン用の設定として以下を推奨する。

  • 「Code Maturity Level Options(コードの完成度レベルについてのオプション)」内で、「Prompt for development and/or incomplete code/drivers(開発中/不完全なコードやドライバについてのオプションも表示)」のチェックを外す。このオプションが必要になるのは、カーネル内の何かを開発したりテストしたりする場合のみだ。
  • 複数のプロセッサがない(デュアルコアプロセッサとクアッドコアプロセッサの場合にも複数のプロセッサと数える)場合には、「General Setup(一般的な設定)」で「Cpuset support(CPUセットのサポート)」のチェックを外す。
  • 2TB以上のディスクを使用していない場合には、「Block Layer(ブロックレイヤ)」で、すべてのチェックを外す。
  • 複数プロセッサやデュアル/クアッドコアプロセッサを使用していない場合には、「Processor Type and Features(プロセッサのタイプと機能)」で「Symmetric multi-processing support(SMPのサポート)」のチェックを外す。「Processor Family(プロセッサ・ファミリ)」で適切なプロセッサを選び、「High Memory Support(大容量メモリのサポート)」で手持ちのRAMの容量を選ぶ。また「Preemption Model(プリエンプション・モデル)」で「Preemptible Kernel (Low Latency Desktop)(プリエンプティブ・カーネル(低遅延デスクトップ))」オプションを選ぶ。さらに「Preempt the Big Kernel Lock(ビッグ・カーネル・ロック(BKL)をプリエンプトする)」にマークする。「Timer Frequency(タイマの周波数)」で1000Hzを選ぶ。
  • 「Kernel Hacking(カーネル開発)」ですべてのチェックを外す(当然ながら、カーネル開発をしない場合にのみ)。

 オプションの選択が完了したら、設定プログラムを終了して(なお新しいカーネル用の設定内容を保存するかと聞かれたときには「YES」と答えること)、以下を実行しよう。

make make modules_install make install

 新しいカーネルに関する問題点を示している可能性のある、予想外のエラーメッセージが表示されていないかを特に注意しよう。また、しばらく時間がかかることを覚悟しておこう。私のノートPCでは、makeの実行には30分以上かかった。エラーメッセージが表示された場合は、メニューに戻ってエラーメッセージが表示されなくなるように再設定に挑戦するか、あるいはあきらめて単にバックアップしておいたカーネルを使い続けることにすれば良い。何が起こったのかが分からないという場合(選択したメニューとエラーとの関係がいつも簡単に把握できるというわけではないため、そういう場合も十分にあり得る)にはいつでも、(前述したようにYASTやSmartを使用して)カーネルを再インストールして最初からやり直すことができる。

 エラーメッセージが表示されなければ、再起動して新しいカーネルを試してみよう。

 私の場合、ブート時間を約10秒削減することができた。また、2メガバイトのRAMを解放することができた。ブート時間の削減は注目に値するほどのものではないが、ノートPCの動きが機敏になったような気がする。――ただしもちろんこれは単なるプラシーボ効果かもしれない。どちらにしても私は、カーネルについて少し詳しくなり、自分の使用状況に合わせてカーネルを最適化して、高速化を探求するうえでの新たな手段を得たことになった。

まとめ

 できるだけ高速なLinuxを手にしたければ、カーネルのコンパイルを恐れていてはいけない。とても勉強になるうえ、最終的にはシステムの性能を改善することができるはずだ。

-- Linux.com記事募集――謝礼あり --

Federico Kerekiはウルグアイのシステムエンジニア。20年に渡るシステム開発、コンサルティング、大学講師の経験がある。

Linux.com 原文

最終更新:2007年10月20日 17:07
SourceForge.JP is a Japanese version of SourceForge.net. For developments that are not related to Japan, we recommend you to use SourceForge.net.