Comment by oskarkk

1 day ago

I love this idea. I like exploring code of interesting projects even if I don't intend to ever work on them, but in complex software I don't know much about it's hard to even find where are the most important basic parts. This allows me to easily find and see how some things in the kernel look like.

Found a bug: in the Chapter 2, when I click on "open" next to "mm/" or other dirs, I get an error: " Failed to load file - Invalid file response from GitHub API - File: mm/". I guess it's cause it tries to open the dir as a file, instead of something like pointing at the dir in the dir tree?

Yes it's good idea and nicely executed.

For the same reason I created a couple of projects with the same goal of lowering the barrier to entry to the linux kernel:

- an app to follow the UDP packet flow in the linux kernel source code: https://dmkskd.github.io/linux-kernel-network-stack-visualiz...

- a (hopefully) simple way to play with the linux kernel source code on a mac: https://github.com/dmkskd/linux-kernel-debugging-on-mac

Kudos to https://github.com/FlorentRevest for all his work in the space

  • One of the best introductions to how kernel works was implementing a timer based context switching RTOS on a microcontroller, so little lines of code but something to build up over and jump into the linux kernel.

  • I love your UDP packet flow tool, kudos for making that! I've always wondered how packets move through an OS. Also interesting how many gotos I see all over the place, even though everyone says "goto is the devil". Then again maybe this code was written long before that "proverb" came into existence.