Final project for PROG40000: Unix Systems Programming - goal is to implement a kernel synchronization mechanism