Build an ELF Loader
Build an ELF executable loader: parse the ELF header, walk program headers, mmap PT_LOAD segments, set up the initial stack and auxv, hand off to dynamic linker (ld-linux.so), apply relocations, and resolve symbols via GOT/PLT.
advanced10 lessons4 chapters10 graded exercisesPython
No sign-up needed for lesson 1 · certificate on completion · sign up to save progress
What you’ll have built
Chapter by chapter. Every step is a graded exercise.
- ELF Format
- Static Loading
- Dynamic Linking
- Production
Starts in Python — solve in the language you choose in the editor, same tests either way.
Curriculum
4 chapters, 10 lessons. Each lesson is a short read, one graded exercise, and a quiz.
- 1ELF: Executable & Linkable FormatRead · exercise · quiz
- 2ELF HeaderRead · exercise · quiz
- 3Program Headers (Segments)Read · exercise · quiz
Loading reference solution…