malloc.c File Reference

#include <stdlib.h>
#include <string.h>
#include <errno.h>
#include <assert.h>

Include dependency graph for malloc.c:

Go to the source code of this file.

Defines

#define NDEBUG
#define ptrint   int
#define BRKSIZE   4096
#define PTRSIZE   ((int) sizeof(void *))
#define Align(x, a)   (((x) + (a - 1)) & ~(a - 1))
#define NextSlot(p)   (* (void **) ((p) - PTRSIZE))
#define NextFree(p)   (* (void **) (p))

Functions

void * _sbrk (int)
int _brk (void *)
static int grow (size_t len)
void * malloc (size_t size)
void * realloc (void *oldp, size_t size)
void free (void *ptr)

Variables

static void * _bottom
static void * _top
static void * _empty


Define Documentation

#define Align x,
a   )     (((x) + (a - 1)) & ~(a - 1))
 

Definition at line 28 of file malloc.c.

Referenced by grow(), malloc(), and realloc().

#define BRKSIZE   4096
 

Definition at line 25 of file malloc.c.

Referenced by grow().

#define NDEBUG
 

Definition at line 8 of file malloc.c.

#define NextFree p   )     (* (void **) (p))
 

Definition at line 30 of file malloc.c.

Referenced by free(), and realloc().

#define NextSlot p   )     (* (void **) ((p) - PTRSIZE))
 

Definition at line 29 of file malloc.c.

Referenced by free(), grow(), and realloc().

#define ptrint   int
 

Definition at line 17 of file malloc.c.

Referenced by grow().

#define PTRSIZE   ((int) sizeof(void *))
 

Definition at line 27 of file malloc.c.

Referenced by insert_arg(), malloc(), and realloc().


Function Documentation

int _brk void *   ) 
 

Referenced by grow().

void* _sbrk int   ) 
 

void free void *  ptr  ) 
 

Definition at line 174 of file malloc.c.

References _empty, assert, next, NextFree, and NextSlot.

static int grow size_t  len  )  [static]
 

Definition at line 50 of file malloc.c.

References _brk(), _top, Align, assert, BRKSIZE, ENOMEM, errno, free, NextSlot, p, and ptrint.

void* malloc size_t  size  ) 
 

Definition at line 70 of file malloc.c.

References Align, ENOMEM, errno, next, NULL, p, and PTRSIZE.

void* realloc void *  oldp,
size_t  size
 

Definition at line 122 of file malloc.c.

References _empty, Align, free, int(), malloc(), n, next, NextFree, NextSlot, NULL, and PTRSIZE.


Variable Documentation

void* _bottom [static]
 

Definition at line 48 of file malloc.c.

void * _empty [static]
 

Definition at line 48 of file malloc.c.

Referenced by free(), and realloc().

void * _top [static]
 

Definition at line 48 of file malloc.c.

Referenced by grow().


Generated on Fri Apr 14 22:59:10 2006 for minix by  doxygen 1.4.6