Unix for Beginners
Unix Shell Programming
Advanced Unix
Unix Useful References
Unix Useful Resources
Selected Reading
Copyright © 2014 by tutorialspoint
|
brk() - Unix, Linux System Call
Advertisements
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 programs data space by
increment bytes.
sbrk() isnt 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 program 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
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.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.
SEE ALSO
Advertisements
|
|
|
To Continue Learning Please Login
Login with Google