● System call interface (SCI)
- ○ A thin layer that provides a method to interact from user space to kernel space
● Process Management (PM)
- ○ Create, destroy processes
- ○ Communication between different processes (kernel threads)
- ○ CPU scheduling
● Memory Management (MM)
- ○ Physical to virtual memory management
- ○ Memory allocation
- ○ Swapping, from memory to hard disk
● Virtual File System (VFS)
- ○ Eports the common file interface
- ○ Abstract file system functionality from implementation
● File Systems
- ○ Implementation of FS functionality
● Buffer Cache
- ○ A set of functions to manipulate main memory designed for FS
● Device Driver
● Physical Device
- ○ Where data live
● Network Stack
- ○ Implement the network protocols
- ○ Deliver packets across programs and network interfaces
● Device Drivers (DD)
- ○ Interact with the hardware
- ○ Extract an abstraction of the device functionalities
● Arch
- ○ Architecture dependent code
Praktikum Kernel Programming
University of Hamburg
Scientific Computing
Winter semester 2014/2015