How to schedule fairness across users, not tasks

The Linux scheduler repeatedly switches between all the running tasks on the system, attempting to give a fair amount of CPU time to each task, favoring interactive tasks. How to scheduling discipline to maintain fairness across users, not tasks.
In the modified scheduler, the user will act as the resource principal. Each user has her/his own set of tasks and credits for execution which are tracked for each user, not just for each task.