sbrk (2)





NAME

       brk, sbrk - change data segment size


SYNOPSIS

       #include <unistd.h>

       int brk(void *end_data_segment);

       void *sbrk(ptrdiff_t increment);


DESCRIPTION

       brk  sets  the  end  of  the  data  segment  to  the value specified by
       end_data_segment, when that value is reasonable, the system  does  have
       enough  memory  and  the process does not exceed its max data size (see
       setrlimit(2)).

       sbrk increments the program's data  space  by  increment  bytes.   sbrk
       isn't a system call, it is just a C library wrapper.  Calling sbrk with
       an increment of 0 can be used to find the current location of the  pro-
       gram break.


RETURN VALUE

       On  success,  brk returns zero, and sbrk returns a pointer to the start
       of the new area.  On error, -1 is returned, and errno is set to ENOMEM.


CONFORMING TO

       BSD 4.3

       brk  and  sbrk  are  not defined in the C Standard and are deliberately
       excluded from  the  POSIX.1  standard  (see  paragraphs  B.1.1.1.3  and
       B.8.3.3).


SEE ALSO

       execve(2), getrlimit(2), malloc(3)

Linux 0.99.11                     1993-07-21                            brk(2)