Планирование ядра Linux - PullRequest
       7

Планирование ядра Linux

8 голосов
/ 09 марта 2010

Я хотел бы знать, как алгоритм планирования Old Linux SJF (сначала самое короткое задание) вычисляет время выполнения процесса?

Ответы [ 2 ]

5 голосов
/ 09 марта 2010

Эта проблема на самом деле является одной из основных причин, по которой она редко используется в общих средах, поскольку алгоритм SJF требует точной оценки времени выполнения всех процессов, что дается только в специализированных средах.

В обычных ситуациях вы можете получить только приблизительную и неточную продолжительность времени выполнения процесса, например, записав длину предыдущих пакетов ЦП того же процесса, и использовать методы математической аппроксимации, чтобы вычислить, как долго он будет выполняться в следующий раз.

1 голос
/ 09 марта 2010

Если у вас есть пропускная способность для записи, вы могли бы найти действительный код здесь . Начните с версии 2.0, где, я думаю, вы найдете ее экспериментальной.

SJF был (IIRC) чрезвычайно недолговечным, по точным причинам, которые ZelluX отметил .

Я думаю, что ваша единственная надежда понять метод, стоящий за этим безумием, живет в коде на данный момент. Вы можете иметь возможность собрать его и загрузить в симуляторе.

Edit:

Теперь я не совсем уверен, что когда-либо 1022 * перешел на основную линию. Если вы не можете его найти, не вините меня:)

...