9 Comments
User's avatar
Tanner Bitz's avatar

As a mostly self taught programmer, this is legitimately an awesome article to demystify some OS level concepts I’ve yet to dig into. Thank you for this, now I have a bit more language to continue exploring these topics! Can’t wait for the next one

Expand full comment
Khoa's avatar

Appreciate your effort on writing out the “toy loader” code, I feel demystified already :)

Expand full comment
jg's avatar

Concise, to the point, and with pleasant illustrations. A really nice summary on the topic. Thanks for the early Christmas gift!

Expand full comment
Ed's avatar

I've been diving into assemblers and loaders recently. I feel like those tools have been left in a deprived state from where they could be. This was a great read to nail down my initial headspace on the topic.

Expand full comment
AAASA's avatar

I am looking forward to the rest of the series!

Expand full comment
Mouton Guillaume's avatar

A very interesting read! Thank you for writing this.

Expand full comment
Andega Misu's avatar

Nice introductory post to program structures. I have a minor correction though (which I presume was an intentional simplification in the article): In the PE format the locations of the special tables that are defined (export, import, resources, etc.) are specified at the end of the optional header. The names of the sections that include them and where the tables start within the sections are irrelevant. The sections may also contain other code or data.

Expand full comment
Dark's avatar

Thank you for sharing ! Really inspiring especially on details about loaders,modules and executable images.

Expand full comment
Bassem Saleh's avatar

That is a great effort and an enjoyable read! Thank you very much for this honest work

Expand full comment