This course delves deep into the implementation details of the Linux kernel. This course is targeted at system administrators and performance specialists who want a better understanding of kernel operation, system and application programmers who need background knowledge on Linux kernel design, and individuals who intend to write device drivers or kernel modules. This course is available for the RedHat distribution, but differences between RedHat and other distributions are covered as they occur (such as for SUSE or Debian/Ubuntu Linux).
Upon completion of this course, the student will be able to describe the various functions of the Linux kernel and discuss in detail the concepts which govern its operation. In addition, the hands-on exercises will reinforce the issues involved in kernel code development.
Students are invited to bring their current ideas and questions to the classroom for discussion. Case studies, lecture, group problem solving, and online laboratories will be used. Students will be encouraged to enhance their skills utilizing the techniques presented through classroom problem solving and controlled online workshops.
The only prerequisite is that students should be familiar with the Unix/Linux command line interface. The students will be expected to execute commands, edit files, and navigate around system directories. Many of the labs require shell command lines.
Students with the following experience will find the more detailed descriptions helpful, but these are not prerequisites since the course covers any required knowledge needed to understand the topics.