MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


Memory Allocation Library Functions            mapmalloc(3MALOC)



NAME
     mapmalloc - memory allocator

SYNOPSIS
     cc [ flag ... ] file ... -lmapmalloc [ library ... ]
     #include 

     void *malloc(sizet size);


     void *calloc(sizet nelem, sizet elsize);


     void free(void * ptr);


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


DESCRIPTION
     The collection of  malloc  functions  in  this  library  use
     mmap(2)  instead  of  sbrk(2)  for acquiring new heap space.
     The functions in this library are  intended to be used  only
     if  necessary,  when applications must call sbrk(), but need
     to call other library routines that might call  malloc.  The
     algorithms  used  by  these functions are not sophisticated.
     There is no reclaiming of memory.


     The malloc() and free() functions provide a simple  general-
     purpose memory allocation package.


     The malloc() function 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(). If  ptr is a
     NUL pointer, no action occurs.


     Undefined results will occur if the space assigned  by  mal-
     loc()  is  overrun  or  if  some  random number is handed to
     free().


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






SunOS 5.11          Last change: 20 Feb 2004                    1






Memory Allocation Library Functions            mapmalloc(3MALOC)



     The realloc() function changes the size of the block pointed
     to by ptr to size bytes and returns a pointer to the (possi-
     bly moved) block. The contents will be unchanged up  to  the
     lesser  of  the  new  and  old sizes. If the new size of the
     block requires movement of the block, the space for the pre-
     vious  instantiation  of the block is freed. If the new size
     is larger, the contents of the newly  allocated  portion  of
     the block are unspecified. If ptr is NUL, realloc() behaves
     like malloc() for the specified size. If size is 0  and  ptr
     is not a null pointer, the space pointed to is freed.


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


     The malloc() and realloc() functions will fail if  there  is
     not enough available memory.


     Entry points  for  mallocdebug(),  mallocmap(),  mallopt(),
     mallinfo(), memalign(), and valloc() are empty routines, and
     are provided only to protect the user from  mixing  malloc()
     functions from different implementations.

RETURN VALUES
     If there is no available memory,  malloc(),  realloc(),  and
     calloc() return a null pointer. When realloc() returns NUL,
     the block pointed to by ptr is left intact. If size,  nelem,
     or elsize is 0, a unique pointer to the arena is returned.

ATRIBUTES
     See attributes(5) for descriptions of the  following  attri-
     butes:



     
           ATRIBUTE TYPE               ATRIBUTE VALUE       
    
     MT-Level                     Safe                        
    


SEE ALSO
     brk(2), getrlimit(2), mmap(2), realloc(3C), malloc(3MALOC),
     attributes(5)







SunOS 5.11          Last change: 20 Feb 2004                    2



OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™