P1: Loading Linux Kernel Modules and Kernel Data Structures.

Assignment Day January 17, 2018
Due Date January 30 You will need to demo this in class.

This project is described with less detail in the text book - as programming project on page 96 - 101 (see piazza for a descriptive pdf). In this project you will a) add a basic kernel module to the Linux Kernel, and b) create a traversible kernel data structure, a list structure.

General Steps (how to install Virtual Box is described in 2, at book resource site.).

  1. (4-5 minutes) Install VirtualBox on your laptop 4-5 minutes
  2. (1 hr) Download the Virtual Machine from the book website ( site ).
  3. Update the Linux kernel:

    sudo apt-get update
    sudo apt-get dist-upgrade
    sudo apt-get install linux-headers-$(uname -r)


    optional full linux source tree: sudo apt-get install linux-source

  4. Write a simple linux kernel module that prints out informational messages.
  5. Write a linux kernel module that manipulates/traverses a kernel list structure.

 

Hints:


Useful commands:


Submission:

please submit all c-code, Makefile and screenshot (demostrating that your programs work appropriately on nike in a directory prefaced with the string: P2