LINUX.ORG.RU

Threads in *nix systems


0

0

Вопрос следующий

Как происходит разделение процессорного времени в системах с несколькими процессорами? Предполагается что будет один процесс с несколькими тридами. Как будет происходить раздедение процессоров на обработку данных трид на SUN и Linux?


> Как происходит разделение процессорного времени в системах с несколькими процессорами?

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

anonymous
()
Ответ на: комментарий от anonymous

Таким образом выполнение тридов возможно на двух процессорах в пределах одного процесса, меня именно это интересует. Причем и под Sun и под Linux. Заранее спасибо.

mumg
() автор топика

диспетчеры у solaris и linux достаточно разные, но выполнение нескольких нитей одного процесса на разных процессорах в SMP системе обеспечивают оба (было бы странно, еслы этого не было)

anonymous
()
Ответ на: комментарий от anonymous

Меня как раз это и интересовало, хотел это выяснить на этапе проэктирования, чтобы потом не переписывать. :) тем более задачи довольно ёмкие.

mumg
() автор топика

Если отсутствует привязка нити к процессору, то она будет исполняться на любом из (на каждом в любой момент времени - наиболее высокоприоритетная нить, с точностью до кванта).

Murr ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.