3 ms·
If you don't mind me asking how did you get into Systems Programming? (Or how would you recommend someone getting into it?)
by kzisme 9y ago
If you don't mind me asking how did you get into Systems Programming? (Or how would you recommend someone getting into it?)
- sillysaurus3 9y agoI liked xv6. https://pdos.csail.mit.edu/6.828/2016/xv6.html https://pdos.csail.mit.edu/6.828/2016/xv6.html https://pdos.csail.mit.edu/6.828/2016/xv6/book-rev9.pdf https://pdos.csail.mit.edu/6.828/2016/xv6/book-rev9.pdf https://pdos.csail.mit.edu/6.828/2012/xv6/xv6-rev7.pdf https://pdos.csail.mit.edu/6.828/2012/xv6/xv6-rev7.pdf The labs are very informative: https://pdos.csail.mit.edu/6.828/2016/labs/lab3/ https://pdos.csail.mit.edu/6.828/2016/labs/lab3/ I also worked through the 6.824 Distributed Systems course, which is a lot of fun: https://pdos.csail.mit.edu/6.824/ https://pdos.csail.mit.edu/6.824/ Lab 4 is fiendishly difficult, but you end up learning a lot. Beyond all that, there's no substitute for just diving in and breaking stuff. Just go with whatever area you find the most fun. Maybe that's compiling and modifying the Linux kernel, or maybe it's tweaking a software rasterizer like https://github.com/blitzcode/rust-exp https://github.com/blitzcode/rust-exp. I got into systems programming mainly as a consequence of being a game developer -- when you write your own engines, you're forced to consider a hundred low-level details like memory layout, pipelining, threading, simulation, adding a scripting interface for your designers, cursing AMD when you run into GPU driver bugs, etc. There are a lifetime worth of interesting problems to solve in that area.