Best Advanced Linux Kernel Training?
hdxia writes "Can anybody recommend a good Linux kernel training course? I have had some Linux kernel hacking experience, but would like to further harden and improve my understanding of the kernel. I expect the course would be advanced. You may say that the best method would be to dig into the kernel myself, but I really want to have a chance to discuss and learn all aspects of the kernel with an experienced instructor."
Just start implementing in the stable kernel and as each of your inputs is rejected, you'll learn. I hope you've had - at least - an operating systems design class (or equiv experience), and you don't try to implement something in kernel space that should be in user space.
e volutionary/dp/0066620732 It appears someone else had more time for fun than I.
BTW, I'm not qualified beyond hacking the IP stack a few years ago with a search/replace, use your imagination for what text was removed/replaced. all this, Just for Fun http://www.amazon.com/Just-Fun-Story-Accidental-R
I'm currently the 3rd year Undergraduate Operating Systems instructor at a big University, and while I'd love to have my students do their work with a real kernel (and preferably an Open Source kernel, like Linux, BSD, or Xnu), it just isn't feasible. First off, the student's C is somewhat weak -- by the time they get to me, they've spent most of their time working in Java. Giving them 2 - 3 week long assignments hacking the Linux kernel would absolutely brutalize them. In my case, I have have a lab issue -- the department hasn't assigned a lab to the course, so I don't have a common system they can do their work on. And even if I did, the IT department probably wouldn't be too fond of them having the ability to recompile and load their own kernels (although this could be mitigated by having them run entirely within a VM -- if we had an assigned lab for the course). And finally, the burden on the grad student marker to be able to mark such assignments would be rough.
The only way I can think to make such a course work (at least where I'm teaching) would be to ask the students to study and explain how various OS subsystems work. I'm all for doing such a thing, but my department wants the students to do programming assignments (note that I'm just a lowly Instructor -- I'm not a tenured Professor).
In the end, however, I don't think that it's realistic for me to expect my students to be able to write an OS once they get out, as few (if any) ever will. My stated goals for them are to have them be able to understand how OS's work, so that they can a) write code that interfaces correctly with the system (API/system calls, IPC, memory management, etc.), and b) be able to compare and contrast different aspects of different OS's, and recommend the best OS for a given task.
Now ideally, my course would then segue to a more advanced kernel-hacking course for those who are sufficiently motivated to take it. However, I doubt many Universities have a suitable practical kernel hacking Instructor/Professor on staff. I'd love to be able to teach such a course, but my practical Linux kernel experience doesn't really extend beyond make clean;make menuconfig;make dep;make;make modules;make install.
Such a course would be cool -- I just imagine many Universities lack the expertise in house to offer such a course.
Yaz.
I don't disagree at all. By the time they get to me, they will have had a little bit of C experience, but it's just a perhaps month-long module in a course on general Unix development (which also includes Unix commands, Perl, and CVS). I am having the tutorial leader teach them various C stuff in their weekly tutorial sessions, which is a start I suppose.
And while we're complaining, I'll also note that I'm introducing a paper to the course this term, as I've found with some previous experience at this University that the report writing abilities of the undergrad students here are pretty weak. I can't exactly blame the students however, as by-and-large most of their courses in Computer Science are strictly programming courses.
I imagine we can find problems with the curriculum at pretty much any University, but the one I'm at needs to do more advanced low-level programming and more report writing at the lower year levels IMHO.
Yaz.