Inspiration

I have learnt about web app developing and self-hosting server in COMP 3010 and COMP 3020, and I'm curious about task scheduling algorithms in COMP 3430. Together, this inspires me to create a webpage that simulate the knowledge I have learnt in COMP 3430.

What it does

This webpage simulates different task scheduling algorithms employed by mainstream Operating Systems. The two algorithms implemented are First Come, First Served (FCFS) and Round-Robin (RR).

How I built it

I built this project using C++ and CMake for the server side. For website rendering, I used React framework. This project can be run on both frontend and backend. I also provided a Bash script and Powershell script to build the server and webpage as well. For library, I used httplib by Yuji Hirose and JSON by Niels Lohmann

Challenges I ran into

This was my first time using CMake so I ran into issues where the project was not built properly (either due to bad configuration or linkage error). Also, this was my first time using React so I wasted a lot of time in configuring the website to render properly as well. Another fatal error was that the backend and frontend was not linked properly which I had to spend time solving as well.

Accomplishments that I'm proud of

I finally got the website running properly.

What we learned

I learnt how to use CMake to compile and link different modules and files for a large project, and how to write shell scripts to run multiple commands at once. I also get to learn the React framework and using it in action as well.

What's next for OS Arena

I might comeback and implement more scheduling algorithms (SJF, MLFQ) and fix any frontend and backend communication issues.

Share this project:

Updates