public inbox for gcc-help@gcc.gnu.org
 help / color / mirror / Atom feed
* loading of shared objects and executables
@ 2012-10-22  6:47 Michael Zintakis
  2012-10-22  8:41 ` Marc Glisse
  2012-10-22 16:54 ` Bolshakov, Roman
  0 siblings, 2 replies; 11+ messages in thread
From: Michael Zintakis @ 2012-10-22  6:47 UTC (permalink / raw)
  To: gcc-help

Though not strictly 100% GCC subject, it is still GCC-related. A couple 
of queries I am hoping someone would be able to address for me.

I am trying to find out what is the process of loading a shared object 
file (.so) and the process of loading and executing a binary file (like 
/bin/bash for example) and what part of the Linux system (or files - 
like ld-linux.so may be?) is responsible for that process?

In other words, when I try to execute a file, I presume "something" 
loads it first into memory, resolves what other shared objects need to 
be loaded and then loads them, before passing the execution to the entry 
point of that executable. I am not interested in the process of the 
actual execution or resolving the external references - just the loading 
process of shared objects and executables, nothing more than that (at 
least not at this stage anyway).

Why would I like to know that?

I am trying to "intervene" in this process, so that before every file 
(shared object or executable) is loaded, I "verify" it and then pass the 
appropriate control to the "standard" loaders for either execution or 
resolving external references, or raise an exception if I don't like the 
file or the shared object about to be loaded.

All this would be done in a Linux environment (x86 - both 32 and 64-bit, 
as well as ARM), no Windoze! I would be glad if someone could give me a 
few pointers - at least to start with. Thanks!


MZ

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2012-10-28 15:31 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-10-22  6:47 loading of shared objects and executables Michael Zintakis
2012-10-22  8:41 ` Marc Glisse
2012-10-22 16:54 ` Bolshakov, Roman
2012-10-27 14:03   ` Michael Zintakis
2012-10-27 17:05     ` Ángel González
2012-10-27 18:51       ` Michael Zintakis
2012-10-28  9:15         ` Bolshakov, Roman
2012-10-28 15:31           ` Michael Zintakis
2012-10-29 17:19         ` Ángel González
2012-10-27 19:26     ` Bolshakov, Roman
2012-10-28 13:12       ` Michael Zintakis

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).