Kintsugi OS 0.2.0
x86 Monolithic OS
Loading...
Searching...
No Matches
mem.h File Reference
#include "ctypes.h"

Go to the source code of this file.

Classes

struct  mem_block
 Блок памяти More...
 
struct  meminfo
 Структура информации о памяти More...
 

Macros

#define HEAP_START   0x100000
 
#define HEAP_SIZE   0x1000000
 
#define BLOCK_SIZE   16
 

Typedefs

typedef struct mem_block mem_block_t
 Блок памяти
 
typedef struct meminfo meminfo_t
 Структура информации о памяти
 

Functions

meminfo_t get_meminfo ()
 Получение информации о памяти
 
void get_freememaddr ()
 Получение адреса свободной памяти
 
int expand_heap (u32 size)
 Увеличение хипа
 
void heap_init ()
 Инициализация хипа
 
void * kmalloc (u32 size)
 Аллокация памяти
 
void * krealloc (void *ptr, u32 size)
 Реаллокация памяти
 
void kfree (void *ptr)
 Освобождение памяти
 
void kmemdump ()
 Информация о памяти
 

Variables

u32 heap_current_end
 

Macro Definition Documentation

◆ BLOCK_SIZE

#define BLOCK_SIZE   16

◆ HEAP_SIZE

#define HEAP_SIZE   0x1000000

◆ HEAP_START

#define HEAP_START   0x100000

Typedef Documentation

◆ mem_block_t

typedef struct mem_block mem_block_t

Блок памяти

◆ meminfo_t

typedef struct meminfo meminfo_t

Структура информации о памяти

Function Documentation

◆ expand_heap()

int expand_heap ( u32  size)

Увеличение хипа

Parameters
sizeразмер
Returns
int

◆ get_freememaddr()

void get_freememaddr ( )

Получение адреса свободной памяти

◆ get_meminfo()

meminfo_t get_meminfo ( )

Получение информации о памяти

Returns
meminfo_t

◆ heap_init()

void heap_init ( )

Инициализация хипа

◆ kfree()

void kfree ( void *  ptr)

Освобождение памяти

Parameters
ptrуказатель

◆ kmalloc()

void * kmalloc ( u32  size)

Аллокация памяти

Parameters
sizeразмер
Returns
void*

◆ kmemdump()

void kmemdump ( )

Информация о памяти

◆ krealloc()

void * krealloc ( void *  ptr,
u32  size 
)

Реаллокация памяти

Parameters
ptrуказатель
sizeразмер
Returns
void*

Variable Documentation

◆ heap_current_end

u32 heap_current_end
extern