Операционные системы. Макушкина Л.А - 9 стр.

UptoLike

9
истечения кванта времени, на исполнение поступает новый процесс из
начала очереди, и таймер начинает отсчет кванта заново.
Продолжительность остатка текущего CPU burst процесса больше, чем квант
времени. Тогда по истечении этого кванта процесс прерывается таймером и
помещается в конец очереди процессов, готовых к исполнению, а
процессор выделяется для использования процессу, находящемуся в ее
начале.
Рассмотрим предыдущий пример с порядком процессов p
0
, p
1
, p
2
и величиной
кванта времени равной 4. Выполнение этих процессов иллюстрируется таблицей
3.2. Обозначение "И" используется в ней для процесса, находящегося в состоянии
исполнение, обозначение "Г" – для процессов в состоянии готовность, пустые
ячейки соответствуют завершившимся процессам. Состояния процессов показаны
на протяжении соответствующей единицы времени, т. е. колонка с номером 1
соответствует промежутку времени от 0 до 1.
Таблица 3
Время
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
p
0
И И И И Г Г Г Г Г И И И И И И И И И
p
1
Г Г Г Г И И И И
p
2
Г Г Г Г Г Г Г Г И
Первым для исполнения выбирается процесс p
0
. Продолжительность его CPU
burst больше, чем величина кванта времени, и поэтому процесс исполняется до
истечения кванта, т. е. в течение 4 единиц времени. После этого он помещается в
конец очереди готовых к исполнению процессов, которая принимает вид p
1
, p
2
, p
0
.
Следующим начинает выполняться процесс p
1
. Время его исполнения совпадает с
величиной выделенного кванта, поэтому процесс работает до своего завершения.
Теперь очередь процессов в состоянии готовность состоит из двух процессов, p
2
и
p
0
. Процессор выделяется процессу p
2
. Он завершается до истечения отпущенного
ему процессорного времени, и очередные кванты отмеряются процессу p
0
единственному не закончившему к этому моменту свою работу. Время ожидания
для процесса p
0
(количество символов "Г" в соответствующей строке) составляет 5
единиц времени, для процесса p
1
4 единицы времени, для процесса p
2
– 8 единиц
времени. Таким образом, среднее время ожидания для этого алгоритма получается
равным (5 + 4 + 8)/3 = 5,6(6) единицы времени. Полное время выполнения для
процесса p0 (количество непустых столбцов в соответствующей строке)
составляет 18 единиц времени, для процесса p
1
8 единиц, для процесса p
2
9
единиц. Среднее полное время выполнения оказывается равным (18 + 8 + 9)/3 =
11,6(6) единицы времени.
Легко увидеть, что среднее время ожидания и среднее полное время
выполнения для обратного порядка процессов не отличаются от соответствующих
времен для алгоритма FCFS и составляют 2 и 6 единиц времени соответственно.
На производительность алгоритма RR сильно влияет величина кванта времени.
Рассмотрим тот же самый пример с порядком процессов p
0
, p
1
, p
2
для величины
кванта времени, равной 1 (см. таблица 4). Время ожидания для процесса p
0
составит 5 единиц времени, для процесса p
1
тоже 5 единиц, для процесса p
2
2
единицы. В этом случае среднее время ожидания получается равным (5 + 5 + 2)/3
       истечения кванта времени, на исполнение поступает новый процесс из
       начала очереди, и таймер начинает отсчет кванта заново.
   − Продолжительность остатка текущего CPU burst процесса больше, чем квант
       времени. Тогда по истечении этого кванта процесс прерывается таймером и
       помещается в конец очереди процессов, готовых к исполнению, а
       процессор выделяется для использования процессу, находящемуся в ее
       начале.
   Рассмотрим предыдущий пример с порядком процессов p0, p1, p2 и величиной
кванта времени равной 4. Выполнение этих процессов иллюстрируется таблицей
3.2. Обозначение "И" используется в ней для процесса, находящегося в состоянии
исполнение, обозначение "Г" – для процессов в состоянии готовность, пустые
ячейки соответствуют завершившимся процессам. Состояния процессов показаны
на протяжении соответствующей единицы времени, т. е. колонка с номером 1
соответствует промежутку времени от 0 до 1.
                                                                          Таблица 3
   Вре мя   1   2   3   4   5   6   7   8       9   10 11 12 13 14 15 16 17 18
     p0     И   И   И   И   Г   Г   Г   Г       Г   И И И И И И И И И
     p1     Г   Г   Г   Г   И   И   И   И
     p2     Г   Г   Г   Г   Г   Г   Г   Г       И
    Первым для исполнения выбирается процесс p0. Продолжительность его CPU
burst больше, чем величина кванта времени, и поэтому процесс исполняется до
истечения кванта, т. е. в течение 4 единиц времени. После этого он помещается в
конец очереди готовых к исполнению процессов, которая принимает вид p1, p2, p0.
Следующим начинает выполняться процесс p1. Время его исполнения совпадает с
величиной выделенного кванта, поэтому процесс работает до своего завершения.
Теперь очередь процессов в состоянии готовность состоит из двух процессов, p2 и
p0. Процессор выделяется процессу p2. Он завершается до истечения отпущенного
ему процессорного времени, и очередные кванты отмеряются процессу p0 –
единственному не закончившему к этому моменту свою работу. Время ожидания
для процесса p0 (количество символов "Г" в соответствующей строке) составляет 5
единиц времени, для процесса p1 – 4 единицы времени, для процесса p2 – 8 единиц
времени. Таким образом, среднее время ожидания для этого алгоритма получается
равным (5 + 4 + 8)/3 = 5,6(6) единицы времени. Полное время выполнения для
процесса p0 (количество непустых столбцов в соответствующей строке)
составляет 18 единиц времени, для процесса p1 – 8 единиц, для процесса p2 – 9
единиц. Среднее полное время выполнения оказывается равным (18 + 8 + 9)/3 =
11,6(6) единицы времени.
    Легко увидеть, что среднее время ожидания и среднее полное время
выполнения для обратного порядка процессов не отличаются от соответствующих
времен для алгоритма FCFS и составляют 2 и 6 единиц времени соответственно.
    На производительность алгоритма RR сильно влияет величина кванта времени.
Рассмотрим тот же самый пример с порядком процессов p0, p1, p2 для величины
кванта времени, равной 1 (см. таблица 4). Время ожидания для процесса p0
составит 5 единиц времени, для процесса p1 – тоже 5 единиц, для процесса p2 – 2
единицы. В этом случае среднее время ожидания получается равным (5 + 5 + 2)/3

                                            9