XenevaOS
Loading...
Searching...
No Matches
_heap.h
Go to the documentation of this file.
1
32#ifndef _LIBALLOC_H
33#define _LIBALLOC_H
34
35#include <stdint.h>
36#include <_xeneva.h>
37
38
39#ifdef __cplusplus
41#endif
42
43
49//#pragma pack(push,1)
50 struct boundary_tag
51 {
52 unsigned int magic; //< It's a kind of ...
53 unsigned int size; //< Requested size.
54 unsigned int real_size; //< Actual size.
55 int index; //< Location in the page table.
56
57 struct boundary_tag *split_left; //< Linked-list info for broken pages.
58 struct boundary_tag *split_right; //< The same.
59
60 struct boundary_tag *next; //< Linked list info.
61 struct boundary_tag *prev; //< Linked list info.
62 };
63//#pragma pack(pop)
64
65
66
75
83
91 XE_LIB void* liballoc_alloc(int);
92
101 XE_LIB int liballoc_free(void*, int);
102
103 XE_LIB void *malloc(unsigned int); //< The standard function.
104 XE_LIB void *realloc(void *, unsigned int); //< The standard function.
105 XE_LIB void *calloc(unsigned long long, unsigned long long); //< The standard function.
106 XE_LIB void free(void *); //< The standard function.
107
108
109#ifdef __cplusplus
110}
111#endif
112
113#endif
114
115
XE_LIB int liballoc_lock()
Definition liballoc.cpp:561
XE_LIB void * realloc(void *, unsigned int)
Definition _heap.cpp:502
XE_LIB void * liballoc_alloc(int)
Definition liballoc.cpp:570
XE_LIB int liballoc_unlock()
Definition liballoc.cpp:566
XE_LIB void free(void *)
Definition _heap.cpp:392
XE_LIB void * calloc(unsigned long long, unsigned long long)
Definition _heap.cpp:486
XE_LIB void * malloc(unsigned int)
Definition _heap.cpp:281
XE_LIB int liballoc_free(void *, int)
Definition liballoc.cpp:588
#define XE_LIB
Definition _xeneva.h:55
#define XE_EXTERN
Definition _xeneva.h:50
Definition liballoc.h:49
struct boundary_tag * split_right
Definition liballoc.h:56
unsigned int size
Definition liballoc.h:51
struct boundary_tag * next
Definition liballoc.h:58
struct boundary_tag * split_left
Definition liballoc.h:55
unsigned int magic
Definition liballoc.h:50
struct boundary_tag * prev
Definition liballoc.h:59
unsigned int real_size
Definition liballoc.h:52
int index
Definition liballoc.h:53