Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX Reference > c

crt0(3)

HP-UX 11i Version 2: August 2003
» 

Technical documentation

» Feedback
Content starts here

 » Table of Contents

 » Index

NAME

crt0.o — execution startup routines

DESCRIPTION

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(1) 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

The features described in this entry originated from AT*T UNIX System III.

FILES

crt0.h

SEE ALSO

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

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1983-2003 Hewlett-Packard Development Company, L.P.