Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ malloc(3c) — NEWS-os 5.0.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

malloc(3X)



malloc(3C)              LIBRARY FUNCTIONS              malloc(3C)



NAME
     malloc, free, realloc, calloc, memalign,  valloc,  -  memory
     allocator

SYNOPSIS
     #include <stdlib.h>

     void *malloc (sizet size);

     void free (void *ptr);

     void *realloc (void *ptr, sizet size);

     void *calloc (sizet nelem, sizet elsize);

     void *memalign(sizet alignment, sizet size);

     void *valloc(sizet size);

DESCRIPTION
     malloc and free  provide  a  simple  general-purpose  memory
     allocation  package.  malloc returns a pointer to a block of
     at least size bytes suitably aligned for any use.

     The argument to free is a  pointer  to  a  block  previously
     allocated  by malloc, calloc or realloc.  After free is per-
     formed this space is made available for further  allocation.
     If ptr is a NULL pointer, no action occurs.

     Undefined results will occur if the space assigned by malloc
     is overrun or if some random number is handed to free.

     realloc changes the size of the block pointed to by  ptr  to
     size  bytes  and  returns  a pointer to the (possibly moved)
     block.  The contents will be unchanged up to the  lesser  of
     the new and old sizes.  If ptr is NULL, realloc behaves like
     malloc for the specified size.  If size is zero and  ptr  is
     not a null pointer, the object pointed to is freed.

     calloc allocates space for an array  of  nelem  elements  of
     size elsize.  The space is initialized to zeros.

     memalign allocates size bytes on a specified alignment boun-
     dary,  and  returns  a  pointer to the allocated block.  The
     value of the returned address is guaranteed to  be  an  even
     multiple of alignment.  Note: the value of alignment must be
     a power of two, and must be greater than  or  equal  to  the
     size of a word.

     valloc(size)           is           equivalent            to
     memalign(sysconf(SCPAGESIZE),size)




                                                                1





malloc(3C)              LIBRARY FUNCTIONS              malloc(3C)



     Each of the allocation routines returns a pointer  to  space
     suitably  aligned  (after  possible  pointer  coercion)  for
     storage of any type of object.

     malloc, realloc, calloc, memalign and valloc  will  fail  if
     there is not enough available memory.

SEE ALSO
     malloc(3X).

DIAGNOSTICS
     If there is no available memory, malloc, realloc,  memalign,
     valloc  and  calloc  return  a  null  pointer.  When realloc
     returns NULL, the block pointed to by ptr  is  left  intact.
     If size, nelem or elsize is 0, a unique pointer to the arena
     is returned.







































                                                                2



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026