END(3C) Standard C Library Functions END(3C)

NAME


end, _end, etext, _etext, edata, _edata - last locations in program

SYNOPSIS


extern int _etext;


extern int _edata;


extern int _end;


DESCRIPTION


These names refer neither to routines nor to locations with interesting
contents; only their addresses are meaningful.

_etext
The address of _etext is the first location after the last
read-only loadable segment.


_edata
The address of _edata is the first location after the last
read-write loadable segment.


_end
If the address of _edata is greater than the address of _etext,
the address of _end is same as the address of _edata.

If the address of _etext is greater than the address of _edata,
the address of _end is set to the page boundary after the
address pointed to by _etext.


USAGE


When execution begins, the program break (the first location beyond the
data) coincides with _end, but the program break can be reset by the
brk(2), malloc(3C), and the standard input/output library (see
stdio(3C)), functions by the profile (-p) option of cc, and so on. Thus,
the current value of the program break should be determined by sbrk
((char *)0).


References to end, etext, and edata, without a preceding underscore will
be aliased to the associated symbol that begins with the underscore.

SEE ALSO


brk(2), malloc(3C), stdio(3C)

March 31, 2006 END(3C)