CS代考 COMP 3430 Operating Systems

COMP 3430 Operating Systems
Scheduling part 2

February 18th, 2022

Copyright By PowCoder代写 加微信 powcoder

By the end of today’s lecture, you should be able to:
▶ Describe a scheduling algorithm in the Linux kernel.
The Rocket Book (Public Domain)

Let’s take a look at the schedule for next week (and the week after).

What’s the kernel doing?
Let’s take a look at what the Linux kernel does.
It’s Tux! (CC0)

Teams: Try to find out where scheduling actually happens. Start at: https://elixir.bootlin.com/linux/latest/source Strategies:
▶ Pick a system call and start clicking.
▶ Use a good keyword (schedule, queue, policy)

Teams: Step through the schedule(void) function. On your safari, take note of the following:
▶ What kinds of things does the kernel do? (names of functions) ▶ What data structures are being used?
▶ Is this a dispatcher, or a scheduler?
STOP when you find different scheduling algorithms/policies.

Together: Start looking at CFS in pick_next_task_fair. On your safari, take note of the following:
▶ How does the scheduler choose which task is next? ▶ What does it consider?
▶ What data structures are being used?

▶ The kernel has configurable scheduling algorithms/policies. ▶ Data structures (trees!) are used extensively.
▶ Kernel can disable preemption.
▶ CFS tries to maximize fairness.

程序代写 CS代考 加微信: powcoder QQ: 1823890830 Email: powcoder@163.com