System calls: how programs talk to the Linux kernel

https://serversfor.dev/linux-inside-out/system-calls-how-programs-talk-to-the-linux-kernel/

Hello everyone,

I've just published the second post in my Linux Inside Out series.

In the first post we demystified the Linux kernel a bit: where it lives, how to boot it in a VM, and we even wrote a tiny init program.

In this second post we go one layer deeper and look at how programs actually talk to the kernel. We'll do a few small experiments to see:

  • how our init program (that we wrote in the first post) communicates with the kernel via system calls
  • how something like echo "hello" ends up printing text on your screen
  • how to trace system calls to understand what a program is doing

I’m mainly targeting developers and self-hosters who use Linux daily and are curious about the internals of a Linux-based operating system.

This is part 2 of a longer series, going layer by layer through a Linux system while trying to keep things practical and approachable.

Link (part 2): https://serversfor.dev/linux-inside-out/system-calls-how-programs-talk-to-the-linux-kernel/

Link (part 1): https://serversfor.dev/linux-inside-out/the-linux-kernel-is-just-a-program/

As always, any feedback is appreciated.

38 points · 3 comments · view on lemmy.world

3 Comments

roninja@programming.dev · 2 pts · 265d (1 reply)

Thank you! That really filled the gaps in my understanding.

zknd@lemmy.world · 1 pts · 265d

Thank you for the feedback.

allo@sh.itjust.works · -2 pts · 260d

no. you're trash.