LST调度全称least slack time schedule。slack time在这里没找到应该如何标准翻译,所以就不翻译了。
slack time=距离deadline的时间 - 仍需要计算的时间
例如有三个进程A(8,12,12),B(1,6,6),C(1,8,8),括号中的数字分别代表了compute time,period time,Deadline time。我们可以根据计算时间和周期时间(例如A进程,每12个单位时间会进行一次)列出如下表格。第0行的A值为4,是根据距离deadline的时间12减去仍需要计算的时间8计算出来的。在这三个进程中4最小,优先执行。到达第第一行时A进程的slack time=11-7不变,其余两个进程因为deadline时间变短,数字变小。此时B进程优先执行,以此类推。如果遇到两个或多个计算时间剩余相同的情况,则优先选择上一个时间周期正在运行的进程继续运行,否则无法预测先运行哪个。