Understanding the lower level concepts of Operating Systems. Each file contains certain portions of the XV6 model, an implementation of UNIX. Specific parts of the code were used from XV6. This is purely for academic use.
Understanding how an operating system reads in commands given through the GUI.
Multiple Files are needed to implement custom system calls. These system calls work closer with the hardware. The system call created shows certain processes (RUNNABLE, RUNNING, and SLEEPING) currently in the CPU, as well as number of CPUs used.
This was created to understand the implementation of C language libraries and how they give programs access to certain functions. I have implemented a few types of printing functions.
Modification of process attributes allows us to implement priority values to processes, which can be manipulated to implement priority scheduling. The lower the priority value for a process, the higher the priority for running.