5月版 マージウィンドウなんか1週間に縮めちゃえ?
上川純一
日本ヒューレット・パッカード株式会社
コンサルティング・インテグレーション統括本部
2008/5/30
着々と進化するKVM、準仮想化での改善
KVMの開発に関しては、準仮想化の部分で進展が見られました。PV(para-virtual)ドライバ関連の一連のパッチがリリースされています。lguestとともに活発に開発されているparavirt_opsの仕組みを活用しているようです。
その1つに「KVM hypercall」という仕組みがあり、ゲストOSがホストOSの支援を受けて各種処理を効率化・高速化できるようになっています。これでオーバヘッドが減るとよいですね。現在はさらに、ディスクI/OやPCIデバイスのDMAの仮想化に向けた仕組みなどの準備が進んでいるようです。
さて、仮想化環境においては、そのままでは時間の扱いが難しく、特殊な取り扱いがなされることが多いです。
KVMもその例外ではありません。Glauber de Oliveira Costaの提案したkvmclockドライバが入り、準仮想化された時間情報が提供されるようになりました。ホストOSがゲストOSのメモリ空間に、現在の時間情報とそのときのプロセッサのTSCレジスタの情報を書き込むという実装になっているようです。こうすることで、ゲストOSの範囲内で時間が取得でき、高速になります。
移植性の部分でも進展があったようです。以前、KVMを移植しやすくするパッチ(KVM Portability)が投稿されていましたが、これを用いて、ia64、powerpc、s390の各版について開発が進んでいるようです。2.6.26-rc1では、各アーキテクチャ向けのコードがマージされました。
関連記事: | |
2007年11月版 x86系重複コードの悪夢は消えるのか? http://www.atmarkit.co.jp/flinux/rensai/watch2007/watch11b.html |
とうとうマージされた便利機能、KGDB
2.6.26向けにマージされた機能として「KGDB」(linux kernel source level debugger)があります。これは昔からパッチとして存在したものなのですが、ほかのコードへの影響が多い関係で、なかなかメインラインへのマージに至りませんでした。パッチを縮小し、影響が少ない形にしてとうとうマージに至りました。
KGDBはカーネルのデバッグ機能を提供します。それも、別マシンでデバッガ(GDB)を実行し、実行中のLinux Kernelに接続できるようにします。この接続には、シリアルケーブルやイーサネット経由での接続が利用可能なようです。
例えば、ブートパラメータで停止するようにブレークポイントを指定したり、exceptionの結果停止したカーネルの状態をリモートからデバッグできるようになります。カーネルデバッグのお供に便利そうじゃないですか?
参考: | |
Documentation/DocBook/kgdb.tmpl | kgdbのドキュメント |
-stableの進ちょく
4月の-stableリリースは、Chris Wrightがリリースした2.6.24.5のみだったようです。あまり急ぎではないバックポートが中心となっており、セキュリティパッチも特にリリースされておらず、安定した月でした。
■2.6.24.y: Greg K-Hたちが管理しているツリー- 2.6.24.5(4月19日):Chris Wright
・fcntl(F_SETLKW)をnfsで利用するとロックする問題に対応
・AF_LLC ソケットを利用するのに特権が必要なように変更する
・fbモジュールをアンロードすると/proc/fbがoopsする
ほか、65パッチ
(以上、敬称略)
2/2 |
|
|
||||
|
連載 Linux Kernel Watch |
Linux Squareフォーラム Linuxカーネル関連記事 |
連載:Linux Kernel Watch(連載中) Linuxカーネル開発の現場ではさまざまな提案や議論が交わされています。その中からいくつかのトピックをピックアップしてお伝えします |
|
連載:Linuxファイルシステム技術解説 ファイルシステムにはそれぞれ特性がある。本連載では、基礎技術から各ファイルシステムの特徴、パフォーマンスを検証する |
|
特集:全貌を現したLinuxカーネル2.6[第1章] エンタープライズ向けに刷新されたカーネル・コア ついに全貌が明らかになったカーネル2.6。6月に正式リリースされる予定の次期安定版カーネルの改良点や新機能を詳しく解説する |
|
特集:/procによるLinuxチューニング[前編] /procで理解するOSの状態 Linuxの状態確認や挙動の変更で重要なのが/procファイルシステムである。/procの概念や/procを利用したOSの状態確認方法を解説する |
|
特集:仮想OS「User
Mode Linux」活用法 Linux上で仮想的なLinuxを動かすUMLの仕組みからインストール/管理方法やIPv6などに対応させるカーネル構築までを徹底解説 |
|
Linuxのカーネルメンテナは柔軟なシステム カーネルメンテナが語るコミュニティとIA-64 Linux IA-64 LinuxのカーネルメンテナであるBjorn Helgaas氏。同氏にLinuxカーネルの開発体制などについて伺った |
|
|
- 【 pidof 】コマンド――コマンド名からプロセスIDを探す (2017/7/27)
本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、コマンド名からプロセスIDを探す「pidof」コマンドです。 - Linuxの「ジョブコントロール」をマスターしよう (2017/7/21)
今回は、コマンドライン環境でのジョブコントロールを試してみましょう。X環境を持たないサーバ管理やリモート接続時に役立つ操作です - 【 pidstat 】コマンド――プロセスのリソース使用量を表示する (2017/7/21)
本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、プロセスごとのCPUの使用率やI/Oデバイスの使用状況を表示する「pidstat」コマンドです。 - 【 iostat 】コマンド――I/Oデバイスの使用状況を表示する (2017/7/20)
本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、I/Oデバイスの使用状況を表示する「iostat」コマンドです。
|
|