1. A method for simulating a multi-queue group scheduler for scheduling tasks on a processor, the tasks being scheduled by an operating system to run on the processor in a predetermined order, the method comprising: (a) identifying and creating task groups of all related tasks; (b) assigning the tasks in the task groups into a single common run-queue; (c) selecting a task at the start of the run-queue; (d) determining if the task at the start of the run-queue is eligible to be run based on a pre-defined timeslice allocated and if presence of other older starving tasks in the runqueue are eligible to run; (e) executing the task in the pre-defined time slice; (f) repeating steps (a)-(e) until all tasks in the run-queue are executed and the run-queue become empty.