Skip to content

These are a series of random project in relation to Operating Systems

License

Notifications You must be signed in to change notification settings

DRK-512/Operating-Systems

Repository files navigation

Operating-Systems

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

Structure

  • There are a few directories in this repo, all containing different types of projects, but all based around the idea of Operating Systems

Linux-Operations

  • These are projects that revolve around linux, such as linux command re-creations, or kernel modules

Process-Synchronization

  • These projects consist of synchronizing processes so that you can have multiple different processes run and interact among each other without conflicts

Scheduling

  • This is all about scheduling algorithms, and displays different types of schedulers

Memory-Management

  • These are all examples of memory management processes, all implemented in different ways.