2013-04-04 3 views
0

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

Process [Arrival Time(ms) , Burst Time(ms)] 
A[0 , 5] , B[3 , 5] , C[5 , 3] , D[7 , 2] 

Я хочу обратить Гант графика и рассчитать среднее время ожидания для вытесняющего Кратчайшего работы Первой планирования.

Решение

http://imgur.com/fP8u61C

Время ожидания составляет 2 мс.

Просто скажите, пожалуйста, если это правильно.

Стадию, где у меня есть сомнения в том, что в 3ms, когда процесс B прибывает, будет планировщик завершить процесс А или начать процесс B.

+0

Добро пожаловать в SO. Google, найти, узнать, а затем прийти для целенаправленного разъяснения на SO. –

ответ

0

Да, ваш ответ правильный. На самом деле поставленная проблема неоднозначна, но обе возможности дают один и тот же ответ.

Во-первых, двусмысленность: кратчайшее задание Первое планирование обычно не считается преимущественным. Преимущественный вариант называются Кратчайшим Оставшимся время Первый Scheduling (смотрите, например the Shortest Job Next entry on Wikipedia. Тем не менее, ваше exercice государство «упреждающей Работа Первое планирование», и этого неоднозначного ...

Во-вторыхи, однако, единственный раз, когда могут быть разницей между этими двумя политиками планирования, как вы упомянули, в t=3, когда имеют право как A, так и B. Но если планирование не имеет превентивного характера, конечно, A продолжает выполнять. Это упреждающее, мы должны учитывать оставшееся время : A имеет 2 мс влево, а B имеет все 5 ... так что A все еще получает процессор.

Наконец, время ожидания: A -> 0 ms, B -> 7 ms, C -> 0 ms, D -> 1ms, среднее значение которого действительно 2 ms.

0

Вы, вероятно, придется делать на собственном домашней работы.

Покажите свою попытку и скажите, какие у вас вопросы и ваши проблемы.

Не ждите полного готового решения!

+0

Я поделился ссылкой на решение. Проверьте ответ. – Kaushik

+0

Ну, я думаю, что это неправильно. Прежде всего вы нарисовали 16 блоков, но у вас 15, 0-15, это 16, так что вы идете 0-14. Затем, когда вы достигаете времени прибытия другого процесса, процесс начинает повторяться, пока вы не закончите процесс в первый раз. Затем вы снова проверяете оставшиеся времена разрыва, и вы начинаете с самого маленького. Таким образом, чтобы helo вы попадёте нормально до 9, а затем вы должны проверить. – Mhche

+0

Также это не диаграмма Ганта, но я думаю, что это неверно для вашего учителя. Так что не беспокойтесь об этом, а просто знать. – Mhche

Смежные вопросы