← Back to context

Comment by aleph_minus_one

4 hours ago

> I’m retired but mentor CS students at two local universities.

> I haven’t had a student in two years that was even remotely interested in ring-0, internals, or really understanding a debugger.

I know quite a lot of such people (even in student age) who are interested in such topics. I really have a feeling that you chose the wrong students at the wrong universities.

Evidence for my point: rather recently, No Starch Press published quite a lot of about such topics - I am rather certain that a publisher knows quite well which kinds of books do or don't sell well at a given time:

- The Book of Debugging https://nostarch.com/book-of-debugging

- The Linux Memory Manager https://nostarch.com/linux-memory-manager

- The Art of 64-Bit Assembly, Volume 2 https://nostarch.com/art-64-bit-assembly-v2

- The Ghidra Book, 2nd Edition https://nostarch.com/ghidra-book-2e

- Building a Debugger https://nostarch.com/building-a-debugger

- Microcontroller Exploits https://nostarch.com/microcontroller-exploits

- System Programming in Linux https://nostarch.com/system-programming-linux

- The Art of ARM Assembly, Volume 1 https://nostarch.com/art-arm-assembly-volume-1

- Getting Started with FPGAs https://nostarch.com/gettingstartedwithfpgas

- The Book of I²C https://nostarch.com/book-i%C2%B2c

> System Programming in Linux https://nostarch.com/system-programming-linux

Any ideas how this compares with Kerrisk's The Linux Programming Interface? I've only so much time to read one 1000+ page book...

  • > Any ideas how this compares with Kerrisk's The Linux Programming Interface?

    Unluckily, I don't know, but comparing the Table of Contents for both books

    > https://man7.org/tlpi/toc-short.html

    > https://nostarch.com/system-programming-linux

    I would claim that The Linux Programming Interface covers a broader range of topics, and I also think this book goes more in depth. On the other hand, System Programming in Linux seems to be more pedagogical, and is more targeted towards people who profit from doing exercises and programming projects to get their hands dirty.

And for some books about Windows system programming:

- Windows Internals, Parts I and II

- Windows 10 System Programming, Parts I and II

- Windows Kernel Programming, Second Edition

- Programming Windows, 5th and 6th Editions

> you chose the wrong students at the wrong universities

I work with Duke University, the University of North Carolina, and Carnegie Mellon.

You don't know that "young engineers" are buying those books. I didn't claim that no one is interested in low-level development. My point is that most younger developers couldn't explain the difference between a mutex and a critical section, or how the OS handles a thread quantum, if their lives depended on it.

I could list a dozen new books on how to build an LLM from scratch. That doesn't mean that most developers understand LLM internals.

As an aside, I love your username. I have a tattoo of Aleph One. ;-)

  • > My point is that most younger developers couldn't explain the difference between a mutex and a critical section, or how the OS handles a thread quantum, if their lives depended on it.

    To my knowledge this is taught in some "Operating System" course, and typically students have to do a hands-on implementation of at least some central parts of an operating system. So I guess these students simply did not pay attention in the respective course. :-(

    • I'll help you out: all CS students are required to take an entry-level OS course. Again, you are making incredibly weak arguments given that most students are required to take an English writing course but then can't remember most of it.

      It isn't that they didn't learn it: the issue is that most CS students graduate and work in areas that require zero OS knowledge. For example, when would I spin up a thread versus a fiber? Even ring-3 devs need to have some level of understanding if they want to create performant software.

      First, I didn't work with the right universities. Now the students I work with "didn't pay attention".

      /ignored