Assignments for incrementally developing kernel
Project Part-1 : p1
Gain familiarity with the Blitz Tools - involves setup of BLitz Tools - KPL Compiler, BLITZ linker, BLITZ assembler,BLITZ emulator(a virtual machine and debugger), disk emulator and other tools . Also, compiling a Hello World program on BLITZ emulator.
Project Part-2 : p2
Understand thread package, implement mutex lock and unlock, solve concurrency problems such as producer-consumer, dining philosophers etc.
Project Part-3 : p3
Solve additional concurrency problems like Sleeping barber, gaming parlour problems using Mutex, Semaphore and monitors.
Project Part-4 : p4
Implement FrameManager, ProcessManager, ThreadManager using Monitors.
Project Part-5 : p5
Implement user level process running in its own address space and making system calls to the Kernel causing CPU to switch from user mode to kernel mode