PROFIL

Section: Linux Programmer's Manual (3)
Updated: 2020-12-21
Index JM Home Page
 

名前

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():

    glibc 2.21 以降:
        _DEFAULT_SOURCE
    glibc 2.19 と 2.20:
        _DEFAULT_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
    glibc 2.19 以前:
        _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
 

説明

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

返り値

常に 0 が返される。  

属性

この節で使用されている用語の説明については、 attributes(7) を参照。
インターフェース 属性 値
profil() Thread safety MT-Unsafe

 

準拠

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

バグ

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

本当のカーネルプロファイルはより正確な結果を与える。  

関連項目

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

この文書について

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

関連キーワード

プロファイル   profil   profile   size   unistd   short   macros   ルーティン   バイト   メモリー   仮想   カウンター   インクリメント   用語   allbox   インターフェース   属性   Thread   インターバル   タイマー   カーネル   正確   https   kernel

Linux マニュアル 一覧

関連するコマンド・関数

sprof.1   gprof.1   memusage.1   getitimer.2   setitimer.2   memset.3
 

Index

名前
書式
説明
返り値
属性
準拠
バグ
関連項目
この文書について

This document was created by man2html, using the manual pages.
Time: 23:31:41 GMT, October 24, 2026