xref: /freebsd/lib/libc/stdlib/memory.3 (revision 6e1fc0118033f42b7c0d3623c8f67a89ebecabb2)
158f0484fSRodney W. Grimes.\" Copyright (c) 1991, 1993
258f0484fSRodney W. Grimes.\"	The Regents of the University of California.  All rights reserved.
358f0484fSRodney W. Grimes.\"
458f0484fSRodney W. Grimes.\" Redistribution and use in source and binary forms, with or without
558f0484fSRodney W. Grimes.\" modification, are permitted provided that the following conditions
658f0484fSRodney W. Grimes.\" are met:
758f0484fSRodney W. Grimes.\" 1. Redistributions of source code must retain the above copyright
858f0484fSRodney W. Grimes.\"    notice, this list of conditions and the following disclaimer.
958f0484fSRodney W. Grimes.\" 2. Redistributions in binary form must reproduce the above copyright
1058f0484fSRodney W. Grimes.\"    notice, this list of conditions and the following disclaimer in the
1158f0484fSRodney W. Grimes.\"    documentation and/or other materials provided with the distribution.
12580b4d18SEd Maste.\" 3. Neither the name of the University nor the names of its contributors
1358f0484fSRodney W. Grimes.\"    may be used to endorse or promote products derived from this software
1458f0484fSRodney W. Grimes.\"    without specific prior written permission.
1558f0484fSRodney W. Grimes.\"
1658f0484fSRodney W. Grimes.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
1758f0484fSRodney W. Grimes.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
1858f0484fSRodney W. Grimes.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
1958f0484fSRodney W. Grimes.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
2058f0484fSRodney W. Grimes.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
2158f0484fSRodney W. Grimes.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
2258f0484fSRodney W. Grimes.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
2358f0484fSRodney W. Grimes.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
2458f0484fSRodney W. Grimes.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
2558f0484fSRodney W. Grimes.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
2658f0484fSRodney W. Grimes.\" SUCH DAMAGE.
2758f0484fSRodney W. Grimes.\"
28a66d27e2SDag-Erling Smørgrav.Dd October 18, 2023
2958f0484fSRodney W. Grimes.Dt MEMORY 3
30a307d598SRuslan Ermilov.Os
3158f0484fSRodney W. Grimes.Sh NAME
32a66d27e2SDag-Erling Smørgrav.Nm aligned_alloc ,
3359b58b16SNik Clayton.Nm alloca ,
34a66d27e2SDag-Erling Smørgrav.Nm calloc ,
35a66d27e2SDag-Erling Smørgrav.Nm free ,
36a66d27e2SDag-Erling Smørgrav.Nm malloc ,
37a66d27e2SDag-Erling Smørgrav.Nm posix_memalign ,
38a66d27e2SDag-Erling Smørgrav.Nm realloc ,
39a66d27e2SDag-Erling Smørgrav.Nm reallocf ,
40a66d27e2SDag-Erling Smørgrav.Nm valloc ,
41a66d27e2SDag-Erling Smørgrav.Nm mmap ,
42a66d27e2SDag-Erling Smørgrav.Nm munmap
43a66d27e2SDag-Erling Smørgrav.Nd memory management functions
4425bb73e0SAlexey Zelkin.Sh LIBRARY
4525bb73e0SAlexey Zelkin.Lb libc
4658f0484fSRodney W. Grimes.Sh SYNOPSIS
478aefde06SJeroen Ruigrok van der Werven.In stdlib.h
4858f0484fSRodney W. Grimes.Ft void *
49a66d27e2SDag-Erling Smørgrav.Fn aligned_alloc "size_t alignment" "size_t size"
50a66d27e2SDag-Erling Smørgrav.Ft void *
51a66d27e2SDag-Erling Smørgrav.Fn alloca "size_t size"
52a66d27e2SDag-Erling Smørgrav.Ft void *
53a66d27e2SDag-Erling Smørgrav.Fn calloc "size_t nelem" "size_t elsize"
5458f0484fSRodney W. Grimes.Ft void
5558f0484fSRodney W. Grimes.Fn free "void *ptr"
5658f0484fSRodney W. Grimes.Ft void *
57a66d27e2SDag-Erling Smørgrav.Fn malloc "size_t size"
58a66d27e2SDag-Erling Smørgrav.Ft int
59a66d27e2SDag-Erling Smørgrav.Fn posix_memalign "void **ptr" "size_t alignment" "size_t size"
60a66d27e2SDag-Erling Smørgrav.Ft void *
6158f0484fSRodney W. Grimes.Fn realloc "void *ptr" "size_t size"
6258f0484fSRodney W. Grimes.Ft void *
63a66d27e2SDag-Erling Smørgrav.Fn reallocf "void *ptr" "size_t size"
6458f0484fSRodney W. Grimes.Ft void *
65a66d27e2SDag-Erling Smørgrav.Fn valloc "size_t size"
668aefde06SJeroen Ruigrok van der Werven.In sys/types.h
678aefde06SJeroen Ruigrok van der Werven.In sys/mman.h
6859b58b16SNik Clayton.Ft void *
6959b58b16SNik Clayton.Fn mmap "void * addr" "size_t len" "int prot" "int flags" "int fd" "off_t offset"
70a66d27e2SDag-Erling Smørgrav.Ft int
71a66d27e2SDag-Erling Smørgrav.Fn munmap "void *addr" "size_t len"
7258f0484fSRodney W. Grimes.Sh DESCRIPTION
7358f0484fSRodney W. GrimesThese functions allocate and free memory for the calling process.
7458f0484fSRodney W. GrimesThey are described in the
7558f0484fSRodney W. Grimesindividual manual pages.
7658f0484fSRodney W. Grimes.Sh SEE ALSO
771a0c34f2SRuslan Ermilov.Xr mmap 2 ,
78a66d27e2SDag-Erling Smørgrav.Xr aligned_alloc 3 ,
7913608f66SWolfram Schneider.Xr alloca 3 ,
8058f0484fSRodney W. Grimes.Xr calloc 3 ,
8158f0484fSRodney W. Grimes.Xr free 3 ,
8258f0484fSRodney W. Grimes.Xr malloc 3 ,
83a66d27e2SDag-Erling Smørgrav.Xr posix_memalign 3 ,
84a66d27e2SDag-Erling Smørgrav.Xr realloc 3 ,
85a66d27e2SDag-Erling Smørgrav.Xr reallocf 3 ,
86*6e1fc011SGraham Percival.Xr valloc 3
8758f0484fSRodney W. Grimes.Sh STANDARDS
88a66d27e2SDag-Erling SmørgravThe
89a66d27e2SDag-Erling Smørgrav.Fn calloc ,
90a66d27e2SDag-Erling Smørgrav.Fn free ,
91a66d27e2SDag-Erling Smørgrav.Fn malloc ,
9259b58b16SNik Claytonand
93a66d27e2SDag-Erling Smørgrav.Fn realloc
94a66d27e2SDag-Erling Smørgravfunctions conform to
95588a200cSRuslan Ermilov.St -isoC .
96a66d27e2SDag-Erling Smørgrav.Pp
97a66d27e2SDag-Erling SmørgravThe
98a66d27e2SDag-Erling Smørgrav.Fn mmap ,
99a66d27e2SDag-Erling Smørgrav.Fn munmap ,
100a66d27e2SDag-Erling Smørgravand
101a66d27e2SDag-Erling Smørgrav.Fn posix_memalign
102a66d27e2SDag-Erling Smørgravfunctions conform to
103a66d27e2SDag-Erling Smørgrav.St -p1003.1-2001 .
104