13#define HEAP_START 0x200000
14#define HEAP_SIZE 0x2000000
16#define MAGIC_NUMBER 0xDEADBEEF
102void kfree(
void* ptr);
unsigned int u32
Definition ctypes.h:11
unsigned char u8
Definition ctypes.h:15
void kfree(void *ptr)
Освобождение памяти
Definition mem.c:158
void * krealloc(void *ptr, u32 size)
Реаллокация памяти
Definition mem.c:127
int expand_heap(u32 size)
Увеличение хипа
Definition mem.c:38
void heap_init()
Инициализация хипа
Definition mem.c:23
struct meminfo meminfo_t
Структура информации о памяти
meminfo_t get_meminfo()
Получение информации о памяти
Definition mem.c:209
u32 heap_current_end
Definition mem.c:18
void kmemdump()
Информация о памяти
Definition mem.c:246
void kfree_aligned(void *ptr)
void get_freememaddr()
Получение адреса свободной памяти
Definition mem.c:297
void * kmalloc(u32 size)
Аллокация памяти
Definition mem.c:55
u32 size
Definition mem.h:0
void * kmalloc_aligned(u32 size, u32 alignment)
Структура загрузочного сектора FAT12.
Definition idt.h:11
Блок памяти
Definition mem.h:24
u8 is_free
Definition mem.h:27
struct mem_block * next
Definition mem.h:26
u32 size
Definition mem.h:25
Структура информации о памяти
Definition mem.h:34
u32 heap_size
Definition mem.h:36
u32 leak_count
Definition mem.h:46
u32 block_size
Definition mem.h:38
u32 total_used
Definition mem.h:40
u32 max_used
Definition mem.h:45
u32 free_count
Definition mem.h:44
mem_block_t * free_blocks
Definition mem.h:39
u32 total_free
Definition mem.h:41
u32 alloc_count
Definition mem.h:43
u32 heap_current_end
Definition mem.h:37
u32 heap_start
Definition mem.h:35
u32 block_count
Definition mem.h:42