end man page on OpenDarwin

Man page or keyword search:  
man Server   3202 pages
apropos Keyword Search (all sections)
Output format
OpenDarwin logo
[printable version]

GET_END(3)							    GET_END(3)

NAME
       get_end,	 get_etext, get_edata - get values of UNIX link editor defined
       symbols

SYNOPSIS
       #include <mach-o/getsect.h>

       unsigned long get_end();
       unsigned long get_etext();
       unsigned long get_edata();

DESCRIPTION
       These routines provide a stopgap measure to programs that use the  UNIX
       link-editor  defined  symbols.	Use of these routines is very strongly
       discouraged.  The problem is that any program that is using  UNIX  link
       editor  defined	symbols (_end, _etext or _edata) is making assumptions
       that the program has the memory layout of a UNIX program.

       This is an incorrect assumption for a program built by the Mach-O  link
       editor.	 The  reason  that these routines are provided is that if very
       minimal assumptions about the layout are used and  the  default	format
       and  memory  layout of the Mach-O link editor is used to build the pro‐
       gram, some things may work by using the values returned by  these  rou‐
       tines  in place of the addresses of their UNIX link-editor defined sym‐
       bols.  So use at your own risk, and only if you know what  your	doing.
       Or better yet, convert the program to use the appropriate Mach or Mach-
       O functions.  If you are trying to allocate memory use  vm_allocate(2),
       if you are trying to find out about your address space use vm_region(2)
       and if you are trying to find out where your program is loaded use  the
       dyld(3) functions.

       The  values  of the UNIX link-editor defined symbols _etext, _edata and
       _end are returned by the routines  get_etext,  get_edata,  and  get_end
       respectively.   In  a  Mach-O  file  they  have	the  following values:
       get_etext returns the first address after the (__TEXT,__text)  section,
       note  this  my  or  may	not be the only section in the __TEXT segment.
       get_edata returns the first address after the (__DATA,__data)  section,
       note this my or may not be the last non-zero fill section in the __DATA
       segment.	 get_end returns the first address after the last  segment  in
       the executable, note a shared library may be loaded at this address.

SEE ALSO
       ld(1), dyld(3)

Apple Computer, Inc.		April 10, 1998			    GET_END(3)
[top]

List of man pages available for OpenDarwin

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
...................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net