This repo consists of random operating systems project I have done whilst reading "Operating Systems Concepts by Abraham Silberschatz, Peter Baer Galvin, and Greg Gagne" or random projects I made up because I was bored
Another great place for Operating System information is (GeekForGeeks)[https://www.geeksforgeeks.org/operating-systems/?ref=shm]
Each project is categorized based off section, and each project should have its own README
For every project simply run the make command, then some executable will be generated, unless the README states otherwise
Note that some projects will require some sort of user input, so read the READMEs if you need to
To remove the executables properly, simply run
$ make clean
If there are some OS project that are not listed here and you want to see then feel free to leave an Issue and I can get to it when I have the chance
The style should follow that of the linux kernel 6.6 styling guide found here: https://www.kernel.org/doc/html/v6.6/process/coding-style.html
- There are a few directories in this repo, all containing different types of projects, but all based around the idea of Operating Systems
- These are projects that revolve around linux, such as linux command re-creations, or kernel modules
- These projects consist of synchronizing processes so that you can have multiple different processes run and interact among each other without conflicts
- This is all about scheduling algorithms, and displays different types of schedulers
- These are all examples of memory management processes, all implemented in different ways.