Why threads over processes?
(1) Creating a new process can be expensive.
1)Time
A call into the operating system is needed
Context-switching involves the operating system
2)Memory
The entire process must be replicated
3)The cost of inter-process communication and synchronization of shared data
May involve calls into the operation system kernel