Multi-Thread or Multi-Process?

Linux has supported Symmetrical Multi-Processor (SMP) environments for
many years. Until recently this has mainly benefited server class
applications but increasingly multi-processor and multi-core systems
are found in embedded systems.

To make best use of SMP, each application needs to be developed in a way which exploits the parallel execution capabilities.

Linux offers both a process and thread model but which should you use?

Programmers with a background in UNIX application development will
naturally develop using processes. Those coming from an embedded
background, having used Real-Time OS's (RTOS), will be more inclined to
use tasks (threads).

Continue Reading ››