Programming assignment #3 - Adding a Kernel-Level Synchronization Primitive

Due by 11:59 p.m., Wednesday, October 24th, 2018.

This is a group assignment. You may form a group of two students to write the code and perform the experiments. Please use the class discussion board (you can find it on your blackboard) as a communication and Q&A tool.  Should you still need to send an e-mail inquiry, address it to the TAs and cc the instructor.

Please see the class blackboard page for details on this assignment.

A Linux kernel reference book would be very helpful. For instance, Chapters 8 and 9 of the Linux Kernel Development (second edition) book by Love and Chapter 5 in Understanding the Linux Kernel (third edition by Bovet and Cesati are excellent references.

Administrative policies

Turn-in:
You are asked to electronically turn in your source files and a makefile. In order to do so, you will creat a kernel patch for your kernel changes using the provided mkpatch.sh script. DO NOT PROVIDE THE ENTIRE KERNEL SOURCE. Your README file should be in plain text format. Instructions for electronic turn-in can be found on the class web page.

Late turn-in policy:
Late turn-ins will be accepted for up to three days, with 10% penalty for each late day. No turn-ins more than three days late will be accepted.