Assignment 4: Linked list + kernel module

Introduction

This assignment is designed for you to become familiar with a Linux kernel module and to understand how to use linked lists.

Task 1: Use the linked list in a kernel module (~60 minutes)

[42 points] Download the source code for homework 4 -- hw4.tar.gz. Carefully read the code to understand the template code given and what you need to write.

Then add comments (M1-M8, X1-X5, X9-X22) explaining what each code block means and implement features (X6-X8). Rename the folder's name to hw4_firstname and create a gzip-ed tarball named hw4_firstname.tar.gz. Turn in the gzip-ed tarball.

Grading rubric

Makefile 
- Explanation: M1-M8 - 1pt each =8pts
hw4.c
- Explanation: X1-X5,X9-X22 - 1pt each =19pts
- Implementation: X6-X8     - 5pts each =15pts

Task 2: Report the execution result

[3 points] Upload a screenshot (named hw4_firstname.png|jpg) of your kernel debug message using dmesg while you run following command. Specifically, run the following command and dmesg in one SSH session using tmux.

sudo insmod hw4.ko int_str="1,2,3,4,5"