crt0_ia(3)                                                       crt0_ia(3)
                        For Itanium(R)-based Systems
 NAME    [Toc]    [Back]
      crt0_ia: crt0.o - execution startup routines
 DESCRIPTION    [Toc]    [Back]
      The C, aC++, and FORTRAN compilers link in the object file crt0.o for
      statically-bound programs to provide startup capabilities and
      environments for program execution.  It contains startup code that
      must be linked using ld to every statically-bound  program. In a
      dynamically linked program (the default method), the crt0.o object
      file is not used, and all actions normally associated with it are
      instead done by the dynamic loader dld.so(5).
      crt0.o processes initializers and terminators.  Initializers are
      routines that are called before the program entry point and
      terminators are routines that are called when the program terminates
      via the exit routine.  Initializers are invoked in reverse order of
      the link line so that dependent libraries are initialized before the
      libraries that depend on them.  Terminators, on the other hand, are
      invoked in the forward order.
      crt0.o does not define any variables. It, however, sets the following
      global variables:
           __argc              A variable of type long containing the number
                               of arguments.
           __argv              An array of character pointers to the
                               arguments themselves.
           _environ, __envp    An array of character pointers to the
                               environment in which the program will run.
                               This array is terminated by a null pointer.
           _SYSTEM_ID          A variable of type long containing the system
                               id value for an executable program.
           __tls_size          A variable of type long containing the
                               requested thread local storage size.  This
                               variable is initialized with data from the
                               kernel.
           __load_info         A variable of type void * containing load
                               information passed from the kernel.
 AUTHOR    [Toc]    [Back]
      The features described in this entry originated from AT&T UNIX System
      III.
 FILES    [Toc]    [Back]
      crt0.h
 Hewlett-Packard Company            - 1 -      HP-UX 11i Version 2: Sep 2004
 crt0_ia(3)                                                       crt0_ia(3)
                        For Itanium(R)-based Systems
 SEE ALSO    [Toc]    [Back]
    System Tools
      aCC(1)            invoke the HP-UX aC++ compiler
      cc(1)             invoke the HP-UX C compiler
      dld.so(5)         the dynamic loader
      exec(2)           execute a file
      f90(1)            invoke the HP-UX FORTRAN compiler
      ld(1)             invoke the link editor
    Miscellaneous
      end(3C)           symbol of the last locations in program
 Hewlett-Packard Company            - 2 -      HP-UX 11i Version 2: Sep 2004 [ Back ] |