NOTE: click here if you get an empty page.
BRK(2) Linux Programmer's Manual BRK(2)
brk, sbrk - change data segment size
int brk(void *end_data_segment);
void *sbrk(intptr_t increment);
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
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
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
4.3BSD; SUSv1, marked LEGACY in SUSv2, removed in POSIX.1-2001.
brk() and sbrk() are not defined in the C Standard and are deliberately
excluded from the POSIX.1 standard (see paragraphs B.18.104.22.168 and
Various systems use various types for the parameter of sbrk(). Common
are int, ssize_t, ptrdiff_t, intptr_t.
execve(2), getrlimit(2), malloc(3)
Linux 2.4 2003-11-01 BRK(2)
© 1994 Man-cgi 1.15, Panagiotis Christias <firstname.lastname@example.org>