NOMBRE¶
brk, sbrk - cambia el tamaño del segmento de datos
SINOPSIS¶
#include <unistd.h>
int brk(void *end_data_segment);
void *sbrk(ptrdiff_t increment);
DESCRIPCIÓN¶
brk establece el final del segmento de datos al valor especificado por
end_data_segment, cuando este valor es razonable, el sistema dispone de
suficiente memoria y el proceso no excede su límite máximo para
datos (véase
setrlimit(2)).
sbrk aumenta el espacio de datos del programa en
increment bytes.
sbrk no es una llamada del sistema, es simplemente un envoltorio
(`wrapper') de la biblioteca de C. Se puede llamar a
sbrk con un
incremento de 0 para averiguar la dirección actual del comienzo de la
zona de memoria dinámica del segumento de datos.
VALOR DEVUELTO¶
En caso de éxito,
brk devuelve cero, y
sbrk da un puntero
al principio de la nueva área. En caso de error, la función
devuelve -1, y en
errno se coloca el valor
ENOMEM.
BSD 4.3
brk y
sbrk no están definidos en el estándar
de C y están excluidos deliberadamente del estándar POSIX.1
(véanse los párrafos B.1.1.1.3 y B.8.3.3).
VÉASE TAMBIÉN¶
execve(2),
getrlimit(2),
malloc(3)