brk(2) System Calls Manual brk(2) brk, sbrk - Standard C library (libc, -lc) #include int brk(void *addr); void *sbrk(intptr_t increment); glibc (. feature_test_macros(7)): brk(), sbrk(): glibc 2.19: _DEFAULT_SOURCE || ((_XOPEN_SOURCE >= 500) && ! (_POSIX_C_SOURCE >= 200112L)) glibc 2.12 glibc 2.19: _BSD_SOURCE || _SVID_SOURCE || ((_XOPEN_SOURCE >= 500) && ! (_POSIX_C_SOURCE >= 200112L)) glibc 2.12: _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 500 brk() sbrk() (program break), (.., -- ). ; . brk() , addr, , (. setrlimit(2)). sbrk() increment . sbrk() increment 0 . brk() . -1, errno ENOMEM. sbrk() . , . (void *) -1, errno ENOMEM. . 4.3BSD; SUSv1, SUSv2, POSIX.1-2001. brk() sbrk(): malloc(3) . sbrk(). int, ssize_t, ptrdiff_t, intptr_t. C brk() , , glibc Linux brk(). brk() ; SUSv2. , Linux . . glibc (. ., addr), 0 -1, . Linux, sbrk() , brk() . execve(2), getrlimit(2), end(3), malloc(3) () Artyom Kunyov , Azamat Hackimov , Dmitriy Ovchinnikov , Dmitry Bolkhovskikh , ITriskTI , Yuri Kozlov , Kirill Rekhov ; GNU (GNU General Public License - GPL, 3 ) , - . - , , () () () <>. Linux man-pages 6.12 23 2024 . brk(2)