Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

The first thing I thought of when I saw the article title here was “How programs get run”[1], a series on LWN; the second installment[2] describes the ELF parts of the story.

(The exposition in his two-parter “Anatomy of a system call”[3,4] is similarly brilliant.)

If all you want is a non-Linux-specific description of how to write a static ELF loader (which is surprisingly simple), you can also take a look at the description on the OSDev Wiki[5] (but be mindful of the somewhat uneven code quality on that website) and at Libelf by example[6] (but libelf may be a bit too much abstraction than you really need if you’re trying to understand the format itself).

[1] https://lwn.net/Articles/630727/

[2] https://lwn.net/Articles/631631/

[3] https://lwn.net/Articles/604287/

[4] https://lwn.net/Articles/604515/

[5] https://wiki.osdev.org/ELF

[6] https://sourceforge.net/projects/elftoolchain/files/Document...



Consider applying for YC's Fall 2026 batch! Applications are open till July 27.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: