Provided by: manpages-nl-dev_4.15.0-9_all bug

NAAM

       brk, sbrk - verander data segment grootte

SAMENVATTING

       #include <unistd.h>

       int brk(void *addr);
       void *sbrk(intptr_t increment);

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

       brk(), sbrk():
           Vanaf 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))
           Voor 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.13  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
       ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ 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⟩.