VMS Help
CRTL, brk
*Conan The Librarian
|
Determines the lowest virtual address that is not used with the
program.
Format
#include <stdlib.h>
void *brk (unsigned long int addr);
addr
The lowest address, which the function rounds up to the next
multiple of the page size. This rounded address is called the
break address.
An address that is greater than or equal to the break address
and less than the stack pointer is considered to be outside the
program's address space. Attempts to reference it will cause
access violations.
When a program is executed, the break address is set to the
highest location defined by the program and data storage areas.
Consequently, brk is needed only by programs that have growing
data areas.
n The new break address.
(void *)(-1) Indicates that the program is requesting too
much memory. errno and vaxc$errno are updated.
Unlike other C library implementations, the Compaq C RTL memory
allocation functions (such as malloc) do not rely on brk or
sbrk to manage the program heap space. Consequently, on OpenVMS
systems, calling brk or sbrk can interfere with memory allocation
routines. The brk and sbrk functions are provided only for
compatibility purposes.