You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucy.apache.org by Marvin Humphrey <ma...@rectangular.com> on 2013/02/11 08:38:12 UTC
[lucy-dev] Book Club: Shared Libraries
Greets,
In addition to half a chapter of Programming Language Pragmatics, this week's
Lucy Book Club will cover Ulrich Drepper's white paper on shared libraries
through section 1.4:
http://wiki.apache.org/lucy/LucyBookClub
http://www.akkadia.org/drepper/dsohowto.pdf
Here are review questions for the Drepper material:
1. What limitations of the `a.out` format make it ill-suited for creating
shared libraries? If a modern Linux system supplied shared libraries
derived from `a.out`, how would that affect applications which use them?
2. What is the main difference between a compiled ELF shared library and a
compiled binary executable?
3. If you're creating a very large application which takes a long time to
link, how can you use shared libraries to minimize the edit-compile-test
loop and maximize programmer efficiency? Compare this use of shared
libraries to traditional separate compilation.
4. When loading the contents of an executable file into memory, why is it
desirable to mark as many pages as possible non-writable?
5. Where must the `Elf32_Phdr` and `Elf64_Phdr` program header structs be
located in an ELF object file? What is the first member in these program
header structs?
See y'all on Tuesday at 7:00 PDT in IRC: irc.freenode.net/#lucy_dev
Marvin Humphrey