balloc.h

来自「Intel x86处理器的汇编器」· C头文件 代码 · 共 66 行

H
66
字号
#ifndef _BALLOC_H_#define _BALLOC_H_typedef struct mem_link_struct {	unsigned int size;	void *head_ptr;	void *tail_ptr;	unsigned char used;		/* is used ? */		struct mem_link_struct *next, *prev;} mem_link_t;typedef struct alloc_heap_struct {	unsigned int total_size;	unsigned int free_size;	mem_link_t *free_link;	mem_link_t *used_link;	void *heap;} alloc_heap_t;typedef unsigned int memlink_size_t;/* free-heap-link total value type, it's a 32-bit type */typedef unsigned int free_link_size_t;/* used-heap-link total value type, it's a 32-bit type */typedef unsigned int used_link_size_t;/* default user-program buffer pool 64K */#define POOLSIZE	65536#define LINKSIZE	256#define FREELINKSIZE	256#define USEDLINKSIZE	256#define EOK		0#define EINIT		-1#define EFULLNESS	-2#define ENOMEM		-3#define EERROR		-4/*char *e_msg[] = {	"initialize error",	"the buffer pool fullness",	"the buffer pool not enough",	0};*/int init_bheap(unsigned int size, void *ptr);void *balloc(unsigned int size);int bfree(void *ptr);#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?