4 ms·
As someone who doesn't understand much of what's going on here, what resources would you suggest I study to improve?
by kdom13 7y ago
As someone who doesn't understand much of what's going on here, what resources would you suggest I study to improve?
- gouggoug 7y agoIt kind off depends on what exactly you don't understand, but a book about Operating Systems and Linux Programming are probably what you want to read. They'll teach you about threads, segfault, the meaning of uninterruptible sleep, signals, the /proc/ directory, etc.
- kdom13 7y agoCan you suggest a book about Operating Systems?
- mgbmtl 7y ago"Operating System Concepts" by Silberschatz, Galvin and Gagne, is a classic. It covers the basics: processes, syscalls, filesystems. (it's what we read in our OS course in university)
- kdom13 7y agoThank you!
- foxrob92 7y agoI'd suggest "Operating Systems: Three Easy Pieces". (http://pages.cs.wisc.edu/~remzi/OSTEP/ http://pages.cs.wisc.edu/~remzi/OSTEP/) I've found it very accessible. Largely, the way that they teach is to describe a system based on a set of assumptions, then slowly relax each of the assumptions one by one until you reach an example of a real system. That style of teaching really works for me.
- kccqzy 7y agoA more pragmatic book is The Linux Programming Interface, by Michael Kerrisk. It is Linux-specific though, but that's probably fine. Uninterruptible process sleep is covered in section 22.3. Threads, in chapters 29–33. Signals, chapters 20–22. The proc file system in section 12.1. Memory mappings, chapters 49–50.
- aaron_m04 7y agoThe version I have covers kernel 2.6. Is that new enough to still be useful?
- usr1106 7y agoUseful yes, complete no. Uninterruptible sleep, signals, memory mappings etc have not changed fundamentally. Namespaces and cgroups are new concepts in Linux, they won't be covered. IIRC user namespaces appeared in 3.14. New cgroup hierarchy got somehow usable much later than that. The new concepts are needed for containers. Not at all relevant for the original article here.
- usr1106 7y agoActually he is still maintaining a list of changes since the book has come out. http://man7.org/tlpi/api_changes/index.html http://man7.org/tlpi/api_changes/index.html
- kccqzy 7y agoOf course. Linux famously "doesn't break userspace" so almost anything that works in 2.6 still works today.
- usr1106 7y agoI haven't read that book, but I enjoyed a conference tutorial about cgroups and namespaces by Michael Kerrisk. One of the best trainers/presenters I have experienced!