scheduler-visualizer
A small program that I created during the scheduling algorithm unit in my operating systems class. It simulates a few different scheduling algorithms based on the provided task list and produces Gantt charts as well as some statistics. Here is an example:
0 5 11 13 25 30 37 44 45 100 110
┌─────┬──────┬──┬──────────┬─────┬───────┬───────┬──┬──────────┬──────────┐
│ P0│ P2│P3│ P8│ P6│ P5│ P1│P4│ │ P7│
└─────┴──────┴──┴──────────┴─────┴───────┴───────┴──┴──────────┴──────────┘
Task Begin Completion Turnaround Waiting Response
P0 0 5 5 0 0
P1 37 44 44 37 37
P2 5 11 11 5 5
P3 11 13 13 11 11
P4 44 45 40 39 39
P5 30 37 25 18 18
P6 25 30 22 17 17
P7 100 110 10 0 0
P8 13 25 20 8 8
Avg 21.11 15.00 15.00
I also experimented with fuzz-testing on this project. The rust fuzz book pointed me in the direction of afl.rs, which provides a way to use the American Fuzzy Lop fuzzing program. The fuzzer found a lot of crashes related to the boilerplate required to interface with afl, which is a bit silly. It also discovered an infinite loop when trying to use a round-robin scheduler with a time quantum of 0, and a couple integer overflow bugs.
The source code can be viewed here.Agora Nomic Notary Tools
Kalker
Shrimple
The World's First (maybe) shrimp-based daily guessing game! This was created with the amazing and wonderful kaizoplant. Honestly she did the majority of the work. But anyway, you can play the game here: shrimple. We originally planned to have an account system to remember your progress, which was totally overkill for such a s(hr)imple game. Currently it runs entirely clientside. The source code can be viewed here.