2021-10-11 18:37:13 -03:00

47 lines
1.5 KiB
C

/* @(#)malloc.h 1.1 94/10/31 SMI; from include/malloc.h 1.5 */
#ifndef __malloc_h
#define __malloc_h
/*
* Constants defining mallopt operations
*/
#define M_MXFAST 1 /* set size of 'small blocks' */
#define M_NLBLKS 2 /* set num of small blocks in holding block */
#define M_GRAIN 3 /* set rounding factor for small blocks */
#define M_KEEP 4 /* (nop) retain contents of freed blocks */
/*
* malloc information structure
*/
struct mallinfo {
int arena; /* total space in arena */
int ordblks; /* number of ordinary blocks */
int smblks; /* number of small blocks */
int hblks; /* number of holding blocks */
int hblkhd; /* space in holding block headers */
int usmblks; /* space in small blocks in use */
int fsmblks; /* space in free small blocks */
int uordblks; /* space in ordinary blocks in use */
int fordblks; /* space in free ordinary blocks */
int keepcost; /* cost of enabling keep option */
int mxfast; /* max size of small blocks */
int nlblks; /* number of small blocks in a holding block */
int grain; /* small block rounding factor */
int uordbytes; /* space (including overhead) allocated in ord. blks */
int allocated; /* number of ordinary blocks allocated */
int treeoverhead; /* bytes used in maintaining the free tree */
};
typedef char * malloc_t;
extern malloc_t calloc(/* size_t nmemb, size_t size */);
extern int free(/* malloc_t ptr */);
extern malloc_t malloc(/* size_t size */);
extern malloc_t realloc(/* malloc_t ptr, size_t size */);
extern int mallopt();
extern struct mallinfo mallinfo();
#endif /* !__malloc_h */