Schedulers are one of the (operational) building blocks of computing. They permeate every layer of what we do and often we don't realise they're there or that we're using them. They organise our threads, realise I/O and orchestrate our infrastructure.
Schedulers have seen an increase in popularity recently due to container schedulers like kubernetes, but the underlying algorithms and data structures are very similar.
This talk will introduce schedulers, how they work and demonstrate them as applied at various levels. Starting with how they're structured and the common algorithms that are used for scheduling arbitrary operations over a finite set of operational resources. Moving onto applying this to the Linux CPU Scheduler, and onto several other system layers beyond.
Talk objectives:
- This talk will introduce schedulers, how they work and demonstrate them as applied at various levels. Starting with how they're structured and the common algorithms that are used for scheduling arbitrary operations over a finite set of operational resources. Moving onto applying this to the Linux CPU Scheduler, and onto several other system layers beyond.
- The main aim of the talk is to help the audience understand how the systems they commonly use work and how schedulers impact their operation. Understanding the basics of a scheduler will mean they're better able to configure and improve the underlying components for systems they use.
Target audience:
- Anyone who uses computer systems and wants to configure them. The goal is to give them the basic knowledge of schedulers which they can then use and apply to configure networking interfaces, queues or even build their own infrastructure orchestration scheduler.
A developer interested in understanding all layers of the systems he interacts with.
Currently working for the Government Digital Service, helping to make GOV.UK a platform for all of government as well as helping departments and agencies improve their digital services.
Github: KushalP
Twitter: @KushalP