linux - __gmon_start is executed before _start -
when analyze /usr/bin/diff
gdb
, see __gmon_start__
being called before _start
reason. every document have found far has been claiming _start
entry point of program; , entry point field in elf header points address of _start
.
why diff
not start executing _start
; , information held?
every document have found far has been claiming _start entry point of program
for fully-static executable, true.
for dynamically linked executable, user-space executions starts @ _start
symbol of loader (ld.so
), , there 10s of thousands of instructions , many system calls executed before loader calls _start
in a.out
.
in process of getting _start
in a.out
, functions main executable called (and that's observing).
Comments
Post a Comment