4 ms·
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'
by oskarkk 11mo 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?
- xxdd2ea 11mo agoYes 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-visualization/ 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 https://github.com/dmkskd/linux-kernel-debugging-on-mac Kudos to https://github.com/FlorentRevest https://github.com/FlorentRevest for all his work in the space
- glenneroo 11mo agoI 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.
- Fnoord 11mo agoSince you mentioned you love that, I will mention this netfilter packet flowchart by Jan Engelhardt [1] [1] https://en.wikipedia.org/wiki/File%3ANetfilter-packet-flow.svg https://en.wikipedia.org/wiki/File%3ANetfilter-packet-flow.s...
- xxdd2ea 11mo agoThanks! I suggest to have a look at a 'live' debugger session video here: https://github.com/dmkskd/linux-kernel-debugging-on-mac?tab=readme-ov-file#debugging-using-visual-studio-code https://github.com/dmkskd/linux-kernel-debugging-on-mac?tab=... given your interest if you have an ARM64 mac (sorry for only supporting this OS at the moment) it should be easy to set this up on your end
- itopaloglu83 11mo agoOne 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.