# OS_GetTotalFreeSize

## 構文

      #include <nitro/os.h>

      u32 OS_GetTotalFreeSize( OSArenaId id, OSHeapHandle heap );

## 引数

id | 合計サイズを取得するヒープが含まれるアリーナのアリーナID
heap | 合計サイズを取得するヒープのヒープハンドル

## 返り値

ヒープの中のフリーブロックの合計サイズ(バイト)です。

## 説明

ヒープの中のフリーブロックの合計サイズを取得します。

heap に OS_CURRENT_HEAP_HANDLE を指定すると、カレントヒープを指定したことになります。

フリーブロックのヘッダはサイズに含めません。フリーブロックのデータ領域のサイズの合計となります。

すべてのフリーブロックを辿って計算を行なうので、所要時間はメモリブロックの量に比例します。

## 参照

`OS_InitAlloc, OS_GetTotalAllocSize, OS_GetMaxFreeSize
`

## 履歴

2004/11/05 初版