If you were like me in college, you first learned about the C programming language in an introductory computer science course. Then, perhaps you took a really hard course in operating systems. Then, you never thought deeply about those concepts ever again.
Given that many software engineering generalists today work in higher level languages, I find that pattern of behavior to be common. Yet, I often encounter situations where I wish I remembered something about C or operating systems, whether it be for an optimization I’m making, a new project I’m starting, or a reference I’m trying to understand.
It’s hard to find good tutorials to refresh one’s memory of these subjects, so I want to share a few that I found useful.
This is by no means an exhaustive list; I may even add to it in the future. But I felt it’s worth sharing now because I wish I had discovered them earlier.