I would like to understand the overall process involved in compilation and execution of a C program . Specifically how C Source Files and Header Files compiled to object code and linked with libraries to generate an ELF executable file and how the ELF is loaded in memory?
Also I would lik to read about the structure of an in memory process.
(I am not specifically looking for steps in compilation that I get from compiler books lik Aho, Ulman.)
What is the best resource (online/book) to understand this in good detail?
I had to learn about all of this recently. A book that details exactly what you are asking is:
Computer Systems: A Programmer’s Perspective. Specifically Chapter 7, which talks about the following topics: