summaryrefslogtreecommitdiffstats
path: root/man2/brk.2
diff options
context:
space:
mode:
Diffstat (limited to 'man2/brk.2')
-rw-r--r--man2/brk.287
1 files changed, 87 insertions, 0 deletions
diff --git a/man2/brk.2 b/man2/brk.2
new file mode 100644
index 000000000..2e24a02b6
--- /dev/null
+++ b/man2/brk.2
@@ -0,0 +1,87 @@
+.\" Hey Emacs! This file is -*- nroff -*- source.
+.\"
+.\" Copyright (c) 1993 Michael Haardt
+.\" (michael@moria.de),
+.\" Fri Apr 2 11:32:09 MET DST 1993
+.\"
+.\" This is free documentation; you can redistribute it and/or
+.\" modify it under the terms of the GNU General Public License as
+.\" published by the Free Software Foundation; either version 2 of
+.\" the License, or (at your option) any later version.
+.\"
+.\" The GNU General Public License's references to "object code"
+.\" and "executables" are to be interpreted as the output of any
+.\" document formatting or typesetting system, including
+.\" intermediate and printed output.
+.\"
+.\" This manual is distributed in the hope that it will be useful,
+.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
+.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+.\" GNU General Public License for more details.
+.\"
+.\" You should have received a copy of the GNU General Public
+.\" License along with this manual; if not, write to the Free
+.\" Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111,
+.\" USA.
+.\"
+.\" Modified Wed Jul 21 19:52:58 1993 by Rik Faith <faith@cs.unc.edu>
+.\" Modified Sun Aug 21 17:40:38 1994 by Rik Faith <faith@cs.unc.edu>
+.\"
+.TH BRK 2 2003-11-01 "Linux 2.4" "Linux Programmer's Manual"
+.SH NAME
+brk, sbrk \- change data segment size
+.SH SYNOPSIS
+.B #include <unistd.h>
+.sp
+.BI "int brk(void *" end_data_segment );
+.sp
+.BI "void *sbrk(intptr_t " increment );
+.SH DESCRIPTION
+.B brk
+sets the end of the data segment to the value specified by
+.IR 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
+.BR setrlimit (2)).
+
+.B sbrk
+increments the program's data space by
+.I increment
+bytes.
+.B sbrk
+isn't a system call, it is just a C library wrapper.
+Calling
+.B sbrk
+with an increment of 0 can be used to find the current
+location of the program break.
+.SH "RETURN VALUE"
+On success,
+.B brk
+returns zero, and
+.B sbrk
+returns a pointer to the start of the new area. On error, \-1 is returned,
+and
+.I errno
+is set to
+.BR ENOMEM .
+.SH "CONFORMING TO"
+BSD 4.3
+
+.BR 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).
+.SH NOTES
+Various systems use various types for the parameter of
+.BR sbrk ().
+Common are \fBint\fP, \fBssize_t\fP, \fBptrdiff_t\fP, \fBintptr_t\fP.
+.\" One sees
+.\" \fBint\fP (e.g. XPGv4, DU 4.0, HP-UX 11, FreeBSD 4.0, OpenBSD 3.2),
+.\" \fBssize_t\fP (OSF1 2.0, Irix 5.3, 6.5),
+.\" \fBptrdiff_t\fP (libc4, libc5, ulibc, glibc2.0, 2.1),
+.\" \fBintptr_t\fP (e.g. XPGv5, AIX, SunOS 5.8, 5.9, FreeBSD 4.7, NetBSD 1.6,
+.\" Tru64 5.1, glibc2.2).
+XPGv6 obsoletes this function.
+.SH "SEE ALSO"
+.BR execve (2),
+.BR getrlimit (2),
+.BR malloc (3)