Personal tools
You are here: Home Teaching WS 2007/2008 Lab: Linux Kernel Lab
Document Actions

Lab: Linux Kernel Lab

by Stefan Götz last modified 2007-11-07 09:42

Hands-on communication engineering right in the heart of the operating system.

  • SWS: 4, ECTS: 8.0, (for 10.0 , e.g. Media Informatics, you need to write a detailed project report)
  • Prof. Dr. Klaus Wehrle, Stefan Götz
  • Student website with course material
  • Important dates:
    • Weekly meetings: Tuesdays 13:30 to 15:30 in the i4 seminar room (Room 4105, Building E1, Ahornstr. 55, Computer Science Campus), Thursdays 14:30 to 16:00 in the LuFGi4 lab room 2U12
    • Kick-off meeting: October 16th, 2007, i.e. the first Tuesday in the term, same place and time as above
    • Registration: closed
    • Part I: kernel basics: October, November
    • Part II: individual projects: December to February, maybe March
    • Presentation of results: end of February, possibly in lecture-free time

Why you want to hack a kernel

Operating systems like Linux and Windows are said to be dead with each new version and even deader with the advent of browser-based Internet applications like Google Documents but reality points quite a different way: the kernel way. Support for

  • processor virtualization
  • trusted platforms
  • multi-core systems
  • ever-growing device functionalities

and more - all this would be useless and pointless without getting your hands a little dirty in the kernel mud.

All the discussions on the Linux kernel mailinglist show just how many unsolved questions there are as to how to make your computer a lot faster and more useful tomorrow. And the cool thing is: you can easily contribute and get your own name into the Linux sources.

Among the side-effects of kernel hacking are:

  • crash dumps
  • debugging nightmares
  • caffeine addictions
  • a fundamental understanding of how and why computers work
  • excellent programming skills
  • insights into basic future hardware and system developments
  • a big asset on your resume

Why we want you to hack a kernel

That one's easy: because our research projects are real-world designs often revolving around communication engineering in kernel space, so we need you to help us build them (in the lab, on a Hiwi job, during a master thesis, etc.).

How you learn to hack a kernel

The lab starts with a six-week phase of week-to-week projects for lab groups of two students to get rooted in the basics of kernel programming and communication engineering in that environment. Since these weekly projects build on top of each other, the learning curve is quite manageable and ends in a usable, touchable single result. The topics in this phase include basic ground work like:

  • what is an operating system
  • Linux kernel modules
  • memory management
  • event management
  • networking data structures and functionality
  • protocol design and implementation, protocol management in the kernel
  • interfaces to user space

In the second phase, each lab group picks a lab projects (we offer enough for everyone but your ideas are more than welcome), having the remaining semester to design and implement that project with the support of a teaching assistant. Presenting your results at the end of the semester is also part of the lab.

Requirements

Since this is a lab in the area of communication system engineering and operating system development, you need to fulfill the following requirements to participate:

  • prediploma or equivalent (e.g. be in a Master's program)
  • some lectures in the area of Distributed Systems, Communication Systems and/or Mobile Communication
  • experience with programming in C
  • strong interest and willingness to contribute time
« November 2009 »
Su Mo Tu We Th Fr Sa
1234567
891011121314
1516 1718192021
22232425262728
2930
How does the Internet work?
Wie funktioniert das Internet?
Wie funktioniert das Internet? - Explaining the Internet to Kids
P2P'08 at RWTH
The 8th International Conference on Peer-to-Peer Computing (P2P'08)
www.p2p08.org
 

Powered by Plone