Взаимодействующие процессы.

Кооперация процессов и основные аспекты ее логической организации.

Shortest-Job-First

При рассмотрение предыдущих алгоритмов видно насколько существенным для них является порядок расположением процессов в очереди, процессов готовых к исполнению. Если короткие задачи расположены в очереди ближе к ее началу, то общая производительность этих алгоритмов значительно возрастает. Если знать время следующей CPU BIRST для процессов находящихся в состояние готовность, то можно выбрать процесс не из начала очереди, а процесс с минимальной длительностью CPU BIRST. Если же таких процессов 2 и больше, то можно использовать алгоритм F.C.F.S. название данного алгоритма кратчайшая работа 1-ой. Данный алгоритм может быть как вытесняющим, так и не вытесняющим. При не вытесняющим планирование процессор предоставляется выбранному процессу на все необходимое ему время, независимо от событий происходящих в вычислительной системе. При вытесняющим планирование учитывается появление новых процессов готовых к исполнению во время работы выбранного процесса. Если CPU BIRST нового процесса меньше чем остаток CPU BIRST у исполняющегося ,то исполняющийся процесс вытесняется новым. Квантование

времени не применяется.

Вытесняющий режим.

P0:время =0, CPU BIRST=6; P1=2, CPU BIRST=2; P2=6, CPU BIRST= 7; P3=0, CPU BIRST=5.

В начальный момент времени в состояние готовность находится только 2 процесса: P0, P3. меньшее время CPU BIRST оказывается у процесса p3, поэтому он выбирается для исполнения. По прошествию 2 единиц времени в систему поступает процесс P1. Время его CPU BIRSY меньше чем остаток у P3, который вытесняется из состояния исполнения и переводится в состояние готовность по прошествии еще 2 единиц времени. Процесс P1 завершается и переводится в состояние завершил исполнение. На исполнение выбирается процесс P3. в момент времени 6 в очереди процессов готовых к исполнению появляется процесс P2, но поскольку его CPU BIRST =7, а процессу P3 осталось трудится 1 единицу, то P3 остается в состояние исполнения. После его завершения в момент времени 7 в очереди находится P0,P2 из которых выбирается P0, а потом P2. основную сложность при реализации алгоритма SJF представляет невозможность точного знания времени очередного CPUN BIRST для исполняющихся процессов.

Для достижения поставленной цели различные процессы исполняться псевдопараллельно на одной вычислительной системе или параллельно на разных вычислительных системах взаимодействуя между собой.

Кооперативными или взаимодействующими процессами называются процессы, которые влияют на поведение друг друга путем обмена информацией. Те, которые общаются, изменяются сами и могут изменять другой процесс. Которые не общаются, не оказывают друг на друга никакого влияния.

К чему приводит общение процессов:

1.повышение скорости работы.

2. совместное использование данных. Различные процессы могут работать с одной и той же динамической базой данных. Сохранение в ОП переменных их значений, не рождая новых процессов.

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