brk

Autres langues

Langue: fr

Version: 30 juillet 2003 (openSuse - 09/10/07)

Section: 2 (Appels système)

NOM

brk, sbrk - Modifier la taille du segment de données.

SYNOPSIS

#include <unistd.h>

int brk(void *fin_segment_donnée);
void *sbrk(ptrdiff_t incrément);

DESCRIPTION

brk positionne la fin du segment de données (le premier mot mémoire hors de la zone accessible) à l'adresse spécifiée par fin_segment_donnée. Cette valeur doit être raisonnable, le système doit avoir suffisamment de mémoire, et le processus ne doit pas dépasser sa taille maximale de segment de données (voir setrlimit(2)).

sbrk incrémente l'espace de données du programme de incrément octets. sbrk n'est pas un appel système, juste une fonction de la bibliothèque C. Appeler sbrk avec un incrément nul permet d'obtenir l'emplacement de la limite actuelle.

VALEUR RENVOYÉE

brk renvoie 0 s'il réussit. sbrk retourne un pointeur sur le début de la nouvelle zone de données. En cas d'échec -1 est renvoyé, et errno contient le code d'erreur ENOMEM.

CONFORMITÉ

BSD 4.3

brk et sbrk ne sont pas définis dans le C Standard, et sont volontairement exclus des standards POSIX.1 (paragraphes B.1.1.1.3 et B.8.3.3).

VOIR AUSSI

execve(2), getrlimit(2), malloc(3).

TRADUCTION

Christophe Blaess, 1996-2003.