This is the mail archive of the
libc-help@sourceware.org
mailing list for the glibc project.
libc inicialization
- From: César <divcesar at gmail dot com>
- To: libc-help at sourceware dot org, libc-alpha at sourceware dot org
- Date: Fri, 12 Oct 2012 23:08:37 -0300
- Subject: libc inicialization
Hello there.
I'm developing (with help of two colleagues) an Linux x86 32 Bits
process emulator (that uses interpretation as emulation technique). We
have get quite far, our emulator already is able to emulate some
dynamic linked toy benchmarks. However we are stuck in glibc
initialization routines!
We have implemented some code todo register and stack (argc, argv,
envp, auxv, ...) initialization, however something is wrong because
the program crashes when executing glibc init routines. My questions
are:
1. What should be the register values at the time of invocation of
libc init routines? And what should be the stack content?
2. Does libc interact with the loader? How? Does glibc access the PCB
(process control block)?
We have read some texts (in general blog posts) but they are
contraditory (or incomplete) at some points. Are the any documentation
explaining these points?
We apreciate any help.
César.