This article explains Linux scheduler’s terminology.
What is a task?
Linux scheduler deals with tasks. Each process and thread is a task in the eyes of the scheduler. Task is represented by task_struct structure.
What is a scheduling policy?
Scheduling policy controls how scheduler manages the tasks.
What policies does Linux support?
Linux supports five of them: SCHED_FIFO, SCHED_RR, SCHED_IDLE, SCHED_BATCH and SCHED_OTHER
Which is most common scheduling policy?
SCHED_OTHER – Default Linux time-sharing scheduling policy used by the majority of processes
What is CFS?
Stands for Completely Fair Scheduler (CFS) . It is default Linux kernel scheduler.
What is a run queue?
Run queue can be thought of as list of tasks that can run on a CPU.
What is time slice?
Time a task runs on CPU before being pre-empted out.
What is task weight?
Each task has a weight. This weight is related to process (or thread) priority. Higher the priority, more will be the weight.