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