I disagree. I think this isn’t a good text. Some examples:
- The text claims to be geared towards beginners, but doesn’t explain what a register is.
- “you are left with an Executable and Linkable Format file (Elf) which is the Linux equivalent of a .exe file” indicates the text is geared towards people who know about execution formats, possibly even Windows users who are.
- “.section .text is where our code will live”, for beginners, needs to explain what sections are and needs a remark that it’s weird that the section named “text” doesn’t contain text, but code. At a very minimum, it should say the reader will have to accept that that magic incantation is needed for now, and that more info will follow.
- the text doesn’t say why you need both ”global _start” and ”_start:”. It does introduce labels, but that’s many lines after using the first one.
Hi author here,
I appreciate the feedback. My goal for this blog is to produce one written article every week, and this one was down to the wire. My view of a beginner is someone that has learned the basics of Python. I struggled a lot with how detailed I wanted the exposition to be and did end up cutting somethings like you mentioned. This won't be the last article I write so I'll keep this in mind in the future
- The text claims to be geared towards beginners, but doesn’t explain what a register is.
- “you are left with an Executable and Linkable Format file (Elf) which is the Linux equivalent of a .exe file” indicates the text is geared towards people who know about execution formats, possibly even Windows users who are.
- “.section .text is where our code will live”, for beginners, needs to explain what sections are and needs a remark that it’s weird that the section named “text” doesn’t contain text, but code. At a very minimum, it should say the reader will have to accept that that magic incantation is needed for now, and that more info will follow.
- the text doesn’t say why you need both ”global _start” and ”_start:”. It does introduce labels, but that’s many lines after using the first one.