Manpages

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.

CONFORME A

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)