Provided by: manpages-ja-dev_0.5.0.0.20180315+dfsg-1_all bug

名前

       profil - 実行時間プロファイル (profile)

書式

       #include <unistd.h>

       int profil(unsigned short *buf, size_t bufsiz,
                  size_t offset, unsigned int scale);

   glibc 向けの機能検査マクロの要件 (feature_test_macros(7)  参照):

       profil(): _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)

説明

       このルーティンはプログラムのどこの部分で時間を費やしているかを調べる  手段を提供する。引き
       数 bufbufsiz バイトのメモリーを指している。仮想の 10 ミリ秒ごとに、ユーザーの プログラ
       ムカウンター  (PC)  が検査される:  offset が引かれ、その結果が scale 倍され 65536 で割られ
       る。 結果が bufsiz より小さい場合は buf  の対応するエントリーがインクリメントされる。  buf
       が NULL ならば、プロファイル (profile) は無効にされる。

返り値

       常に 0 が返される。

準拠

       SVr4 のコールに似ている (しかし POSIX.1-2001 ではない)。

バグ

       profil()    は   ITIMER_PROF  インターバルタイマーも使用しているプログラムでは使用できない
       (setitimer(2)  参照)。

       本当のカーネルプロファイルはより正確な結果を与える。 libc 4.4 にはシステムコール profil を
       提供するための カーネルパッチが含まれていた。

関連項目

       gprof(1), sprof(1), setitimer(2), sigaction(2), signal(2)

この文書について

       この  man ページは Linux man-pages プロジェクトのリリース 3.79 の一部である。 プロジェクト
       の説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。