第7章 コンパイラーとツール


SystemTap

SystemTap とは、 追跡調査を行うことができるツールで、 ユーザーはオペレーティングシステム (特にカーネル) のアクティビティを詳細に渡って調査、監視することができます。 netstatpstopiostat などのツールからの出力と似たような情報を提供します。 ただし、 収集した情報に対してより詳細なフィルタリングや分析が行えるよう設計されています。

Red Hat Enterprise Linux 5.9 の SystemTap はバージョン 1.8 に更新され、以下の拡張機能を提供するようになりました。
  • SystemTap ランタイム (staprun) では、-T タイムアウトオプションを使用するようになりました。これにより、ウェイクアップが減少するため、スクリプトから低スループット出力をポーリングできるようになりました。
  • kbuild $PATH 環境は、 SystemTap により呼び出された場合、健全性を保持する目的で削除されるようになりました。
  • printf の形式に %#c 制御パラメーターを使用して、編集記号をエスケープできるようになりました。
  • プリティプリントのビットフィールドに整数を使用できるようになりました。また、文字はエスケープされた形式で表示するようになりました。
  • SystemTap のコンパイルサーバーおよびクライアントは、IPv6 ネットワークをサポートするようになりました。
  • SystemTap モジュールはさらに小型化され、コンパイルが速くなりました。デフォルト設定では、モジュールの debuginfo は表示されなくなりました。
  • @var 構文は、uprobe および kprobe ハンドラー (プロセス、カーネル、モジュール) の DWARF 変数にアクセスするための代替の言語構文となりました。
  • SystemTap スクリプトトランスレーター/ドライバー (stap) は、以下のリソース上限のオプションを提供するようになりました。
    --rlimit-as=NUM
    --rlimit-cpu=NUM
    --rlimit-nproc=NUM
    --rlimit-stack=NUM
    --rlimit-fsize=NUM
    
  • SystemTap compile-server は複数の同時接続をサポートするようになりました。
  • 以下の tapset 機能は、1.8 リリースでは廃止予定になっています。また、 1.9 リリースで削除が予定されています。
    daddr_to_string()
    
  • SystemTap はローカルの変数を難号化して、tapset が含んでいる C ヘッダーとの競合を防ぐようになりました。
  • 埋め込み C 関数では、THIS->* 表記ではなく、 新たに定義されたマクロ STAP_ARG_* を使用するようにしてください。BZ#751479
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.