alloca man page on Ultrix

Man page or keyword search:  
man Server   3690 pages
apropos Keyword Search (all sections)
Output format
Ultrix logo
[printable version]

malloc(3)							     malloc(3)

       malloc, free, realloc, calloc, alloca - memory allocator

       #include <stdlib.h>

       void *malloc(size)
       size_t size;

       void *ptr;

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

       void *calloc(nelem, elsize)
       size_t nelem, elsize;

       void *alloca(size)
       size_t size;

       The  and subroutines provide a simple general-purpose memory allocation
       package.	 The subroutine returns a pointer to a block of at least  size
       bytes beginning on a word boundary.

       The  argument  to  is a pointer to a block previously allocated by This
       space is made available for further allocation, but  its	 contents  are
       left undisturbed.

       Needless to say, grave disorder will result if the space assigned by is
       overrun or if some random number is handed to

       The subroutine maintains multiple lists of  free	 blocks	 according  to
       size, allocating space from the appropriate list.  It calls to get more
       memory from the system when there is no suitable	 space	already	 free.
       For further information, see

       The  subroutine changes the size of the block pointed to by ptr to size
       bytes and returns a pointer to the (possibly moved)  block.   The  con‐
       tents will be unchanged up to the lesser of the new and old sizes.

       If ptr is a null pointer, then behaves like for the specified size.  If
       size is zero, then frees the space pointed to by ptr.

       In order to be compatible with older versions, also works if ptr points
       to a block freed since the last call of or Sequences of and were previ‐
       ously used to attempt storage compaction.  This procedure is no	longer

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

       The subroutine allocates size bytes of space in the stack frame of  the
       caller.	This temporary space is automatically freed on return.

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

       When returns 0, the block pointed to by ptr may be destroyed.

       Currently,  the	allocator is unsuitable for direct use in a large vir‐
       tual environment where many small blocks are kept, since it  keeps  all
       allocated and freed blocks on a circular list.  Just before more memory
       is allocated, all allocated and freed blocks are referenced.

       The subroutine is machine dependent.

       The and subroutines return a null pointer (0) if there is no  available
       memory or if the arena has been detectably corrupted by storing outside
       the bounds of a block.

       The and subroutines will fail and no additional memory  will  be	 allo‐
       cated if one of the following is true:

       [ENOMEM]	   The limit, as set by is exceeded.

       [ENOMEM]	   The	maximum possible size of a data segment (compiled into
		   the system) is exceeded.

       [ENOMEM]	   Insufficient space exists in the swap area to  support  the

				      VAX			     malloc(3)

List of man pages available for Ultrix

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
Vote for polarhome
Free Shell Accounts :: the biggest list on the net