Provided by: manpages-nl-dev_4.13-4_all bug

NAAM

       brk, sbrk - verander data segment grootte

SAMENVATTING

       #include <unistd.h>

       int brk(void *adres);

       void *sbrk(intptr_t increment);

   Test Macro´s in glibc (zie feature_test_macros(7)):

       brk(), sbrk():
           Sinds glibc 2.19:
               _DEFAULT_SOURCE ||
                   (_XOPEN_SOURCE >= 500) &&
                   ! (_POSIX_C_SOURCE >= 200112L)
           Van glibc 2.12 tot 2.19:
               _BSD_SOURCE || _SVID_SOURCE ||
                   (_XOPEN_SOURCE >= 500) &&
                   ! (_POSIX_C_SOURCE >= 200112L)
           Vóór glibc 2.12:
               _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 500

BESCHRIJVING

       brk()   eb sbrk()  veranderen de locatie van het programma einde, die  het einde het het data segment van
       het proces  markeert   (m.a.w.,  het  programma  einde  is  de  eerste  locatie  ná  het  einde  van  het
       niet-geïnitialiseerde  data segment).  Verhogen van het programma einde heeft een effect op het toekennen
       van geheugen aan het proces; verlagen  van het einde geeft geheugen vrij.

       brk() zet het einde van het data segment op de waarde gegeven door addr, wanneer die waarde redelijk  is,
       het  systeem  genoeg  geheugen  heeft,  en  het  proces  overschrijdt  niet de maximale data grootte (zie
       setrlimit(2)).

       sbrk() vergroot de data ruimte van het programma met  increment  bytes.  Aanroepen  van  sbrk()  met  een
       increment waarde 0 kan gebruikt worden om de huidige locatie van het programma einde te vinden.

EIND WAARDE

       Bij succes geeft brk() nul terug. Bij falen wordt -1 teruggegeven en wordt errno naar behoren gezet.

       Bij  succes  retourneert  sbrk()  het  vorige  programma einden. (Als het einde werd vergroot dan is deze
       waarde een wijzer naar het begin van het nieuw toegewezen geheugen).  Bij  een  fout  wordt   (void *) -1
       teruggegeven, en errno wordt op ENOMEM gezet.

VOLDOET AAN

       4.3BSD; SUSv1, markeerden erfenis in SUSv2, verwijderd in POSIX.1-2001.

OPMERKINGEN

       Vermijd  het gebruik van brk()  en sbrk(): het malloc(3)  geheugen toewijs pakket is overdraagbaar en een
       comfortabele manier om geheugen toe te wijzen.

       Verschillende systemen gebruiken verschillende typen voor het argument van sbrk().  Gebruikt worden  int,
       ssize_t, ptrdiff_t, intptr_t.

   C library/kernel verschillen
       De uitvoer waarde zoals boven beschreven voor brk() is het gedrag voorzien door de glibc omwikkel functie
       voor  de Linux brk() systeem aanroep. (In de meeste andere implementaties, is de uitvoer waarde van brk()
       hetzelfde; deze uitvoer waarde werd ook gespecificeerd in  SUSv2.)   Echter,  de  huidige  Linux  systeem
       aanroep  retourneert  een  nieuw programma einde bij succes. Bij een fout, retourneert de systeem aanroep
       het huidige einde. De glibc omwikkel functie doet werk (m.a.w., controleert of het nieuwe  einde  kleiner
       is dan addr) om te voorzien in de 0 en -1 uitvoer waarden zoals hierboven beschreven.

       Op  Linux  is  sbrk() geïmplementeerd als een bibliotheek functie die de brk systeem aanroep gebruikt, en
       die interne administratie uitvoert zodat het oude einde teruggegeven kan worden.

ZIE OOK

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

COLOFON

       Deze pagina is onderdeel van release 5.10 van het  Linux  man-pages-project.  Een  beschrijving  van  het
       project,  informatie  over  het  melden  van  bugs  en  de  nieuwste  versie  van  deze  pagina  zijn  op
       https://www.kernel.org/doc/man-pages/ te vinden.

VERTALING

       De   Nederlandse   vertaling   van   deze   handleiding   is   geschreven    door    Mario    Blättermann
       <mario.blaettermann@gmail.com> en Luc Castermans <luc.castermans@gmail.com>

       Deze  vertaling  is  vrije  documentatie;  lees  de GNU General Public License Version 3 of later over de
       Copyright-voorwaarden. Er is geen AANSPRAKELIJKHEID.

       Indien U fouten in de vertaling van deze handleiding zou  vinden,  stuur  een  e-mail  naar  debian-l10n-
       dutch@lists.debian.org.

Linux                                             15 maart 2016                                           BRK(2)