#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 バイトがヒープ領域として使用されます。
2004/01/06 初版