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

UptoLike

14
алгоритма гарантированного планирования приоритетом служит вычисленный
коэффициент справедливости. Чем он меньше, тем больше у процесса приоритет.
Алгоритмы назначения приоритетов процессов могут опираться как на
внутренние параметры, связанные с происходящим внутри вычислительной
системы, так и на внешние по отношению к ней. К внутренним параметрам
относятся различные количественные и качественные характеристики процесса
такие как: ограничения по времени использования процессора, требования к
размеру памяти, число открытых файлов и используемых устройств ввода-вывода,
отношение средних продолжительностей I/O burst к CPU burst и т. д. Алгоритмы
SJF и гарантированного планирования используют внутренние параметры. В
качестве внешних параметров могут выступать важность процесса для достижения
каких-либо целей, стоимость оплаченного процессорного времени и другие
политические факторы. Высокий внешний приоритет может быть присвоен задаче
лектора или того, кто заплатил $100 за работу в течение одного часа.
Планирование с использованием приоритетов может быть как вытесняющим,
так и невытесняющим. При вытесняющем планировании процесс с более высоким
приоритетом, появившийся в очереди готовых процессов, вытесняет
исполняющийся процесс с более низким приоритетом. В случае невытесняющего
планирования он просто становится в начало очереди готовых процессов. Давайте
рассмотрим примеры использования различных режимов приоритетного
планирования.
Пусть в очередь процессов, находящихся в состоянии готовность, поступают те
же процессы, что и в примере для вытесняющего алгоритма SJF, только им
дополнительно еще присвоены приоритеты (см. таблице 11). В вычислительных
системах не существует определенного соглашения, какое значение приоритета
1 или 4 считать более приоритетным. Во избежание путаницы, во всех наших
примерах мы будем предполагать, что большее значение соответствует меньшему
приоритету, т. е. наиболее приоритетным в нашем примере является процесс p
3
, а
наименее приоритетнымпроцесс p
0
.
Таблица 9
Процесс Время появления в очереди
Продолжительность
очередного CPU burst
Приоритет
p
0
0 6 4
p
1
2 2 3
p
2
6 7 2
p
3
0 5 1
Как будут вести себя процессы при использовании невытесняющего
приоритетного планирования? Первым для выполнения в момент времени t = 0
выбирается процесс p
3
, как обладающий наивысшим приоритетом. После его
завершения в момент времени t = 5 в очереди процессов, готовых к исполнению,
окажутся два процесса p
0
и p
1
. Больший приоритет из них у процесса p1, он и
начнет выполняться (см. таблице 12). Затем в момент времени t = 8 для
исполнения будет избран процесс p
2
, и лишь потомпроцесс p
0
.
алгоритма гарантированного планирования приоритетом служит вычисленный
коэффициент справедливости. Чем он меньше, тем больше у процесса приоритет.
   Алгоритмы назначения приоритетов процессов могут опираться как на
внутренние параметры, связанные с происходящим внутри вычислительной
системы, так и на внешние по отношению к ней. К внутренним параметрам
относятся различные количественные и качественные характеристики процесса
такие как: ограничения по времени использования процессора, требования к
размеру памяти, число открытых файлов и используемых устройств ввода-вывода,
отношение средних продолжительностей I/O burst к CPU burst и т. д. Алгоритмы
SJF и гарантированного планирования используют внутренние параметры. В
качестве внешних параметров могут выступать важность процесса для достижения
каких-либо целей, стоимость оплаченного процессорного времени и другие
политические факторы. Высокий внешний приоритет может быть присвоен задаче
лектора или того, кто заплатил $100 за работу в течение одного часа.
   Планирование с использованием приоритетов может быть как вытесняющим,
так и невытесняющим. При вытесняющем планировании процесс с более высоким
приоритетом, появившийся в очереди готовых процессов, вытесняет
исполняющийся процесс с более низким приоритетом. В случае невытесняющего
планирования он просто становится в начало очереди готовых процессов. Давайте
рассмотрим примеры использования различных режимов приоритетного
планирования.
   Пусть в очередь процессов, находящихся в состоянии готовность, поступают те
же процессы, что и в примере для вытесняющего алгоритма SJF, только им
дополнительно еще присвоены приоритеты (см. таблице 11). В вычислительных
системах не существует определенного соглашения, какое значение приоритета –
1 или 4 считать более приоритетным. Во избежание путаницы, во всех наших
примерах мы будем предполагать, что большее значение соответствует меньшему
приоритету, т. е. наиболее приоритетным в нашем примере является процесс p3, а
наименее приоритетным – процесс p0.
                                                                             Таблица 9
                                              Продолжительность         Приоритет
 Процесс     Время появления в очереди
                                             очередного CPU burst
    p0      0                            6                          4
    p1      2                            2                          3
    p2      6                            7                          2
    p3      0                            5                          1

   Как будут вести себя процессы при использовании невытесняющего
приоритетного планирования? Первым для выполнения в момент времени t = 0
выбирается процесс p3, как обладающий наивысшим приоритетом. После его
завершения в момент времени t = 5 в очереди процессов, готовых к исполнению,
окажутся два процесса p0 и p1. Больший приоритет из них у процесса p1, он и
начнет выполняться (см. таблице 12). Затем в момент времени t = 8 для
исполнения будет избран процесс p2, и лишь потом – процесс p0.



                                         14