Here are the pages tagged 'low-level':
This is a follow-up to my Minimal C++ article.
It might be helpful to read that article first, in order to understand the
context better.
Here, I present a relatively refined—and featherweight—method for
using C++ in “micro” environments: think 16- or 32-bit microcontrollers with memory
on the order of 64–256 KiB of storage, usually split between the program and
runtime memory (RAM).
Read the full post…
I keep talking about—and getting asked about—something that I refer to as “Minimal C++”. To be clear, there are a few points I should start of by stating explicitly:
This is not—as far as I’m aware—a term used elsewhere. It is not a new, different, or distinct language from C++. It is simply a model for using C++ that is different from the traditional heavyweight model using the C++ standard runtime and standard template libraries.
Read the full post…
This writeup was inspired by a conversation on Mastodon.
The Problem It is really easy to do something silly with an ELF file, such as accidentally create a dynamically-linked one as opposed to a statically-linked one. This is incredibly easy to do because in nine out of ten situations, you want to create an ELF program that uses shared libraries.
Also, perhaps counter-intuitively, when linking a PIE binary, it is an ELF shared object with an entrypoint, not an ELF executable.
Read the full post…