Skip to content
0:00 / 0:00

#elf#bootloader#linker

Structure of an ELF file

Some Assembly required

5K subscribers • 1 video on Hallway

YouTube

Intermediate. Assumes working knowledge.

5.9K views3 years ago1 recommendation

Systems programmingOperating systemsCompilers and interpreters

An explanation of the Executable and Linkable Format structure and how to parse it within a custom second-stage bootloader.

"Executable and Linkable Format", or ELF, is a format used by most Unix systems today for loading programs into memory. It turns out that there's a reason this format is useful, and it's useful for our project as well. Patreon BBC Micro level supporters: Yehuda T. Deutsch Code available on github: github.com/CompuSAR/control_cpu Support the project on Patreon: patreon.com/CompuSar Discord server invite: discord.gg/nNv53PWgBj Table of contents: Two stage boot - why? Second stage loader Generating the boot loader Second stage differences Custom load format ELF file structure Boot loader actual code Changing the OS code

Why it's here

1 person recommends this

What people say. Recommended as a helpful resource for understanding the ELF format and how linkers work.

u/DnBenjaminin r/osdev • Recommends

On “Definition of static linking and dynamic linking?”

Read, read, read…watch videos, etc. https://en.wikipedia.org/wiki/Linker_(computing) https://en.wikipedia.org/wiki/Static_library https://en.wikipedia.org/wiki/Dynamic_linker ELF Specifically: https://en.wikipedia.org/wiki/Executable_and_Linkable_Format https://www.cs.cmu.edu/afs/cs/academic/class/15213-f00/docs/elf.pdf — very in depth link to this video