4月版 遅れの原因はどこ? LatencyTOPで解析可能に


上川純一
日本ヒューレット・パッカード株式会社
コンサルティング・インテグレーション統括本部
2008/4/30

linux-kernelメーリングリスト(以下LKML)かいわいで起きるイベントを毎月お伝えする、Linux Kernel Watch。2008年3月のLKMLでどんなことが起きたのか見てみましょう。

2.6.25リリース、timerfdも有効に

 3月25日に2.6.25-rc7がリリースされました。その後、rc8、rc9を経て、最終的に4月16日に2.6.25がリリースされています

 Linusは前回の2.6.24のリリース時に、リリースの間隔が長くなってしまったことを嘆いていました。しかし今回のリリースでは、前回に比べリリース間隔が短くなり、83日になっています。これは2.6.21や2.6.22の水準に戻ったことになります。

 カーネル2.6.25におけるシステムコールでの変更点として、timerfdが挙げられます。

 timerfdについては、以前のKernel Watchでも取り上げたことがありますね。タイマーを利用する際、シグナルをファイルディスクリプタ経由で受信する仕組みです。

 2.6.22では、同時に提案されたsignalfdとeventfdは有効になっていたのですが、timerfdについては、利用インターフェイスについて合意が取れていないという理由から無効になっていました。ですが、2.6.25-rc1でマージされた新しいインターフェイスで利用可能になっています。

int timerfd_create(int clockid, int flags);
int timerfd_settime(int ufd, int flags,
const struct itimerspec *utmr,
struct itimerspec *otmr);
int timerfd_gettime(int ufd, struct itimerspec *otmr);
timerfdの新しいインターフェイス

 2.6.25では、リリース版のカーネルとしては初のSELinux以外のセキュリティ機構「SMACK」がマージされていますので、試してみてはいかがでしょうか。

関連記事:
リンク 2007年8月版 リグレッションやChangeLogは不要?
http://www.atmarkit.co.jp/flinux/rensai/watch2007/watch08a.html
リンク 2007年10月版 あんなコアいいな、吐けたらいいな
http://www.atmarkit.co.jp/flinux/rensai/watch2007/watch10a.html

linux-nextの成果は?

 2月14日にスタートしたlinux-nextについて、Stephen Rothwellが「そろそろ次のマージウィンドウの時期だが、今後、リリースのためにlinux-nextをどう活用するつもりなのか?」と質問しました。テスト管理の効率化を目的にこの仕組みを提案したAndrew Mortonは、「linux-nextのおかげで-mmツリーのパッチの衝突が減っており、マージが楽になっている」と回答しました。

 中には、まだ-mmツリーにしかないパッチもあります。これからはそれらも、linux-nextをベースにして開発を進めるようです。もちろん、すべてをlinux-nextにマージするべきかどうかについては検討が必要です。影響の大きなパッチのために、-mmツリーも存続することになりそうですね。

関連記事:
リンク 2008年3月版 Linusの片腕、Andrewの夢は「結合テストを楽に」
http://www.atmarkit.co.jp/flinux/rensai/watch2008/watch03a.html

遅れの原因はどこ? LatencyTOPで解析可能に

 皆さんは、1月にArjan van de Vanが発表したLatencyTOPを利用していますか? このパッチはLinux Kernel 2.6.25-rc1でマージされ、2.6.25に含まれています。

 LatencyTOPは、システムのレイテンシを解析するための仕組みです。スケジューラによってプロセスが実行待ち状態になった場合、Topコマンド風に原因別の比率と遅延の最大時間、平均時間を記録し、表示してくれます。

リリース期間
LatencyTOPの出力画面

 レイテンシが発生すると、特にデスクトップ用途やマルチメディア関連のアプリケーションではストレスや音切れなどにつながります。LatencyTOPにより、遅延を発生させる原因となったアプリケーションやドライバを特定し、改善につなぐことができるかもしれません。原因追究に役立ってくれそうですね。

 使い方は簡単。latencytop機能が有効になったカーネル(CONFIG_LATENCYTOPを有効)上で、latencytopコマンドラインアプリケーションを実行するだけです。これで解析がやりやすくなりますね。

参考:
リンク LatencyTOP
http://www.latencytop.org/

1/2

Index
Linux Kernel Watch 4月版
 遅れの原因はどこ? LatencyTOPで解析可能に
Page 1
 2.6.25リリース、timerfdも有効に
 linux-nextの成果は?
 遅れの原因はどこ? LatencyTOPで解析可能に
  Page 2
 フラッシュデバイス向け? UBIベースのファイルシステム登場
 いよいよ登場か、LVM3開発宣言
 1Gbytes単位のページでメモリ管理
 -stableの進ちょく

連載 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カーネルの開発体制などについて伺った

MONOist組み込み開発フォーラムの中から、Linux関連記事を紹介します


Linux & OSS フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Linux & OSS 記事ランキング

本日 月間