This project, as a part of the CS2200 (Systems and Networks) course, involves the development of a multiprocessor operating system simulator using pthreads in Linux. The primary objective is to implement a CPU scheduler supporting three algorithms: First Come First Serve (FCFS), Round-Robin, and Preemptive Priority.
- Understand and manage process states.
- Implement and manage a ready queue for processes.
- Handle CPU scheduling in a multithreaded, multiprocessor environment.
- Scheduling Algorithms: Implementation of FCFS, Round-Robin, and Preemptive Priority.
- Process State Management: Efficient handling of various process states.
- Thread Safety: Ensuring safe operations in a multithreaded context.
- Operating Systems principles, especially CPU scheduling and multithreading.
- Practical application of pthreads in a Linux environment.
- 'student.c': Core implementation of the CPU scheduling algorithms.