- To get familiar with the process of kernel module compilation.
 - To present how a module can be used with a kernel.
 - To get familiar with simple kernel debugging methods.
 - To implement two kernel modules.
 
- To get familiar with the process of kernel module compilation.
 - To present how a module can be used with a kernel.
 - To get familiar with simple kernel debugging methods.
 - To implement two kernel modules.
 
- Learn to program a concurrent application using POSIX threads.
 - Become familiar with application of the TCP/IP servers.
 - To get familiar with functions for string handling in C.
 
- Creating and managing a thread pool.
 - To get familiar with Pthreds and POSIX synchronization.