BRK(2) Linux Programmer's Manual BRK(2)
NAME
brk, sbrk - change data segment size
SYNOPSIS
#include <unistd.h>
int brk(void *end_data_segment);
void *sbrk(intptr_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(8,n), -1 is returned, and errno is set(7,n,1 builtins) to ENOMEM.
CONFORMING TO
BSD 4.3
brk and sbrk are not defined in(1,8) the C Standard and are deliberately
excluded from the POSIX.1 standard (see paragraphs B.1.1.1.3 and
B.8.3.3).
NOTES
Various systems use various types for the parameter of sbrk(). Common
are int, ssize_t, ptrdiff_t, intptr_t. XPGv6 obsoletes this function.
SEE ALSO
execve(2), getrlimit(2), malloc(3)
Linux 2.4 2003-11-01 BRK(2)