Kintsugi OS 0.5.0
x86 Monolithic OS
Loading...
Searching...
No Matches
heap.h File Reference
#include "../kklibc/ctypes.h"

Go to the source code of this file.

Classes

struct  mem_block
 
struct  meminfo_t
 

Macros

#define HEAP_START   0xc0000000u
 
#define HEAP_SIZE   0x04000000u
 
#define BLOCK_SIZE   16u
 

Typedefs

typedef struct mem_block mem_block_t
 

Functions

void heap_init (void)
 
int expand_heap (u32 size)
 
void * kmalloc (u32 size)
 
void * krealloc (void *ptr, u32 size)
 
void kfree (void *ptr)
 
void * kmalloc_aligned (u32 size, u32 alignment)
 
void kfree_aligned (void *ptr)
 
meminfo_t get_meminfo (void)
 
void kmemdump (void)
 
void kmemcheck (void *ptr)
 
void get_freememaddr (void)
 

Variables

u32 heap_current_end
 

Macro Definition Documentation

◆ BLOCK_SIZE

#define BLOCK_SIZE   16u

◆ HEAP_SIZE

#define HEAP_SIZE   0x04000000u

◆ HEAP_START

#define HEAP_START   0xc0000000u

Typedef Documentation

◆ mem_block_t

typedef struct mem_block mem_block_t

Function Documentation

◆ expand_heap()

int expand_heap ( u32  size)

◆ get_freememaddr()

void get_freememaddr ( void  )

◆ get_meminfo()

meminfo_t get_meminfo ( void  )

◆ heap_init()

void heap_init ( void  )

◆ kfree()

void kfree ( void *  ptr)

◆ kfree_aligned()

void kfree_aligned ( void *  ptr)

◆ kmalloc()

void * kmalloc ( u32  size)

◆ kmalloc_aligned()

void * kmalloc_aligned ( u32  size,
u32  alignment 
)

◆ kmemcheck()

void kmemcheck ( void *  ptr)

◆ kmemdump()

void kmemdump ( void  )

◆ krealloc()

void * krealloc ( void *  ptr,
u32  size 
)

Variable Documentation

◆ heap_current_end

u32 heap_current_end
extern