# OS_InitStatistics

## 構文

  `#include <nitro/os.h>`
  `void OS_InitStatistics( void* statBuf, u32 size );`

## 引数

statBuf | 関数コスト集計バッファ
size | 関数コスト集計バッファサイズ

## 返り値

なし。

## 説明

関数コスト集計バッファの初期化を行ないます。

この関数を有効にするためには、リンク時に libos.FUNCTIONCOST.a (thumb 版なら libos.FUNCTIONCOST.thumb.a ) を含む必要があります。これは make のオプションに TWL_PROFILE_TYPE=FUNCTIONCOST を指定することにより行ないます。Makefile の中に書いても有効です。ただし最終ROM版(FINALROM)ライブラリでは何も動作を行ないません。

バッファ buf には、先頭部分にヘッダ情報(バッファの最終位置や現在使用しているのポインタなど、`sizeof(OSFunctionCostStatisticsInfo) - sizeof(OSFunctionCostStatistics)` バイト)が格納され、残りに統計情報が入れられていきます。

関数コスト計測バッファの内容から、`OS_CalcStatistics()` または `OS_CalcThreadStatistics()` でこの関数コスト集計バッファに集計を行ない、`OS_DumpStatistics()` でその内容を表示します。複数の関数コスト計測バッファの内容を、１つの関数コスト集計バッファに集計を行なうことも出来ます。

## 参照

`OS_DumpStatistics, OS_CalcStatistics, OS_CalcThreadStatistics
`

## 履歴

2004/05/18 初版