练习
练习1:比较函数
比较一个在lab5和lab6都有, 但是实现不同的函数, 说说为什么要做这个改动, 不做这个改动会出什么问题。
如kern/schedule/sched.c
里的函数。你也可以找个其他地方做了改动的函数。
练习2:分析sched_class
sched_class
理解并分析 sched_class 中各个函数指针的用法,并描述ucore如何通过Round Robin算法来调度两个进程,并解释sched_class里的每个函数(函数指针)是怎么被调用的。
练习3:二选一
简要说明如何设计实现”多级反馈队列调度算法“,给出概要设计,鼓励给出详细设计
简要证明/说明(不必特别严谨,但应当能够”说服你自己“),为什么Stride算法中,经过足够多的时间片之后,每个进程分配到的时间片数目和优先级成正比。
练习4:实现Stride调度算法
在kern/schedule/default_sched_stride.c
填写Stride
调度算法实现。
你需要调试proc.c
中的一个bug,才能使调度算法正常运行。
最后更新于