OS_CreateHeap

構文

#include <iris/os.h>
void OS_CreateHeap( OSArenaId id, void* start, void* end ); 

引数

id ヒープを作成するアリーナのアリーナID
start ヒープ領域の先頭アドレス
end ヒープ領域の終了アドレス(+1)

返り値

ヒープを作成することが出来た場合、ヒープへのハンドル値を返します。これは0以上の値です。
ヒープを作成することが出来なかった場合、-1を返します。

説明

指定のアリーナにヒープを作成します。
そのアリーナはあらかじめOS_InitAlloc() でメモリ割り当てシステムの初期化を行っておく必要があります。
アリーナはアリーナID で指定します。この値については OS_InitArena() を参照してください。
ヒープのための領域は start から end までとなります。end は実際の終了位置より+1されたアドレスで、例えば OS_CreateHeap( OS_ARENA_MAIN, (void*)0x2030000, (void*)0x2040000 ) の場合、 0x2030000〜0x203FFFF の 0x10000 バイトがヒープ領域として使用されます。

参照

OS_InitArena, OS_InitAlloc

履歴

2004/01/06 初版