xv6 is a simple UNIX-like operating system. As part of my Intro to Operating systems course, I implemented a number of features to this OS.
- Kernel scheduling --> lottery based, similar to popular Web services
- Virtual memory --> null pointer de-referencing and inversion of stack location
- Kernel threads --> Implement support for multi-threaded applications
- File system --> Implement mirrored RAID data protection