0

«Процессы могут быть описаны как физически одновременно и логически параллельных процессов, различие между ними аналогично , что между реальными и виртуальными процессорами»Типы параллельных процессов

что это значит?

В чем разница между физически параллельными и логически параллельными процессами?

ответ

2

В чем разница между физически параллельными и логически связанными процессами ?

Предположим, что если у вас есть один основной процессор и предположим, что если у вас многопоточность в коде, он будет выглядеть так, как если бы он работал параллельно в нескольких разных процессорах; но на самом деле он использует один процессор, где квант времени выделяется каждому потоку циклически. В этом случае процессы (ИЛИ-потоки) работают параллельно параллельно, но на самом деле между процессами (потоками) существует много раз переключение контекста для имитации, как если бы они выполнялись одновременно.

Принимая во внимание, что если бы у вас было несколько ядер в вашем процессоре (или нескольких процессорах), ваш многопоточный код выполнялся бы параллельно на разных ядрах (или процессорах, если они есть) одновременно! В этом случае процессы выполняются параллельно параллельно.

Надеюсь, это очистит ваши сомнения! Не стесняйтесь спрашивать в случае дальнейших запросов.

+0

Вы пропустили точку - одно ядро ​​может поддерживать несколько потоков одновременно. – babon

+0

@babon - Не могли бы вы подробно рассказать о том, что я пропустил здесь в своем ответе? –

+0

Поток - это поток инструкций. Ядра, поддерживающие несколько потоков, могут обрабатывать несколько потоков одновременно. Вы можете проверить эту ссылку: http://superuser.com/questions/700430/what-does-2-core-4-threads-mean-in-cpu – babon