タグ

Workとkernelに関するyukimori_726のブックマーク (5)

  • 第3部第1回 パラメータ変更でカーネル・チューニング

    Linuxカーネルは,CPUやメモリー,ディスク,ネットワークなどのさまざまなデバイスを管理・制御しています。カーネルがそれらを扱う際の設定をうまく変更すれば,各部分の性能を容易に向上できます。いくつかチューニングのキーとなるポイントを具体的に紹介します。 Linuxに精通した人なら「カーネル・チューニング」といえば,カーネル・コンパイル時の各種設定を書き換え,カーネルを再構築するといった方法を考えることでしょう。確かに,カーネルにはCPUやメモリー,I/O,ネットワーク,各種周辺デバイスに関する100以上の設定が,コンパイル時に用意されています。 ただカーネルの設定を書き換えて再構築しても飛躍的に性能を向上させることは難しいといえます。一般のLinuxディストリビューションに含まれるカーネルは,デスクトップやサーバーなどのさまざまな環境で最適に動作するように構築されているからです。 実は

    第3部第1回 パラメータ変更でカーネル・チューニング
  • linux のシステムコールをフックする : DSAS開発者の部屋

    最近、とあるクローズドソースなデバイス管理ツールの挙動が気になり、その動作について解析してみることにしました。 プログラムをデバッグしたり解析したい時、どんなシステムコールが呼ばれ、どのような引数が渡されているかを、調べることができる strace は非常に有用です。 しかし、strace では ioctl で渡される複雑なデータ構造を表示することはできないため、システムコールをフックして引数を表示するという手段を取ることにしました。 そんな訳で linux でシステムコールをフックする方法について調べて見たところ、意外といろいろな方法が有ることを知りましたので、試してみた方法を幾つか紹介したいと思います。 注)今回の実験に使用した linux kernel のバージョンは 2.6.25.11 です。異なるバージョンではこの実験通りにはならない場合があります。 LD_PRELOAD を使っ

    linux のシステムコールをフックする : DSAS開発者の部屋
  • Linuxカーネル標準の仮想化機能KVM

    カーネル2.6.20から「KVM」(Kernel-based Virtual Machine)と呼ぶ仮想化機能が標準搭載された。KVMは,1台のマシンでLinuxと他のOS(ゲストOS)を協調稼働できるように制御する,いわゆる「VMM」(仮想マシン・モニター)と呼ばれるソフトである。カーネル内部に組み込まれており,KVMに対応した仮想化ソフト(例えばKVM版QEMU)と組み合わせて使用する。 KVMとKVM対応仮想化ソフトを組み合わせることでPC環境を「完全仮想化(フル・バーチャライゼーション)」できる注1。完全仮想化したPCでは,LinuxWindowsを同時に動かすことなどができる(写真1)。 写真1●KVM機能を使ってLinux上でWindows XPを稼働 KVMは完全仮想化に対応した仮想マシン・モニターである。KVM対応の仮想化ソフトを使うとWindows XPなどのOSを無改

    Linuxカーネル標準の仮想化機能KVM
  • JF: Linux Kernel 2.6 Documentation: Index

    Linux Kernel 2.6.x ソースに含まれる Documentation ディレクトリの翻訳です。 翻訳の完了したものから随時公開しています。 公開した翻訳文書すべてをアーカイブしたものを kernel-docs-2.6-current.tar.gz として用意してあります。 これらのファイルはすべて GPL-2 に従う限り、自由に再配布が可能です。 翻訳作業情報(進捗や作業予約)については Kernel-Docs 2.6 in progress をご覧ください。 /usr/src/linux/Documentation/ BUG-HUNTING KernelのBugを見つける方法 CodingStyle Linux カーネル コーディング規約 HOWTO new Linux カーネル開発のやり方 IPMI.txt Linux でハードウェアの IPMI 情報にアクセスする方法

  • Linuxメモリ管理の最先端を探る(2/2) - @IT

    小崎 資広 2008/5/22 VM(仮想メモリ)の改善 昔からのLinuxユーザーの方は、カーネル2.4の時代に、一時期VM(仮想メモリ)が不安定で悩まされていたことを覚えている方もいるかもしれません。 現在のVMは、Andrea Arcangeliの作成した割とシンプルな設計なVMに、Rik van Rielの作成したページフレームからページテーブルエントリを逆引きするためのreverse mappingという機能を追加したものが基となっています。 これは、コードの複雑さと性能の間でバランスの取れた、なかなか評判のいいものだったのですが、カーネル2.6の登場から約5年がたち、だんだんアラが目立つようになってきました。 というのも、当時は一般的なパソコンのメモリ量は256M~512Mbytes程度で、サーバでも4Gbytesの壁を超えるようなマシンはまれでした。しかし、DRAMの急激な

  • 1