/sys/doc/ Documentation archive



BREAK(II)                     8/5/73                    BREAK(II)



NAME
     break, brk, sbrk - change core allocation

SYNOPSIS
     (break = 17.)
     sys break; addr

     char *brk(addr)

     char *sbrk(incr)

DESCRIPTION
     Break sets the system's idea of the lowest location not used
     by the program (called the break) to addr (rounded up to the
     next  multiple  of  64 bytes).  Locations not less than addr
     and below the stack pointer are not in the address space and
     will thus cause a memory violation if accessed.

     From  C,  brk  will set the break to addr.  The old break is
     returned.

     In the alternate entry sbrk, incr more bytes  are  added  to
     the  program's  data space and a pointer to the start of the
     new area is returned.

     When a program begins execution via exec the break is set at
     the highest location defined by the program and data storage
     areas.  Ordinarily, therefore, only  programs  with  growing
     data areas need to use break.

SEE ALSO
     exec(II), alloc(III), end(III)

DIAGNOSTICS
     The  c-bit  is  set if the program requests more memory than
     the system limit or if more than  8  segmentation  registers
     would be required to implement the break.  From C, -1 is re-
     turned for these errors.

BUGS
     Setting the break in the range 0177700  to  0177777  is  the
     same as setting it to zero.















                              - 1 -