An implementation of a multi level queue (running round robin on each queue) scheduler can be found at BackEnd directory.
you can run main.go
without any args to generate random processes, or provide a json file of process like
go run main.go processes.json
the mlq works like this: