Processes vs threads, Computer Engineering

Assignment Help:

One might argue that in general processes are more ?exible than threads. For one thing, they can live in two different machines, and communicate via sockets; they are easy to spawn remotely (e.g. ssh foo.cs.umass.edu "ls -l"); etc. However, using processes requires explicit com- munication and risks hackery. Threads also have their own problems: because they communicate through shared memory, they must run on the same machine and they require thread-safe code.

So even though threads are faster, they are much harder to program. In a sense, we can say that processes are far more robust than threads, since they are completely isolated from other another. Threads, on the other hand, are not that safe, since whenever one thread crashes the whole process terminates.

When comparing processes and threads, we can also analyze the cost of context switches. When- ever we need to switch between two processes, we must invalidate the TLB cache (the so-called TLB shootdown; see Section 6.2.3). Because warming up the TLB takes time, context switches for processes are slower.

On the other hand, when we switch between two threads, it is not necessary to invalidate the TLB, because all threads share the same address space, and thus have the same contents in the cache. In other words, on many operating systems, the cost of switching between threads is much smaller than the cost of switching between processes. Most large-scale systems use a mixture of processes and threads:

threads within a process on one server, communicating via a network socket to similar processes on other servers.


Related Discussions:- Processes vs threads

Explain naming convention constants, Explanation Constants are "variable...

Explanation Constants are "variables" that cannot be changed within a function- or script-body. The value will always be the similar during script-implementation. Syntax "AX

What is link destruction, What is link destruction? Link destruction is...

What is link destruction? Link destruction is inverse of link creation. When a link is destroyed makes sure the associated objects accessible by other handles or intentionally

What is focussed ion beam fix, What is Focussed Ion Beam Fix? A FIB Fix...

What is Focussed Ion Beam Fix? A FIB Fix (Focussed Ion Beam) Fix is simply performed onto a terminated chip. FIB is a somewhat exotic process where a particle beam is capable t

Explain handle graphics in matlab, This is the MATLAB graphics system. It c...

This is the MATLAB graphics system. It contains high-level commands for two-dimensional and three-dimensional data visualization, image processing, animation, and presentation grap

Write shorts notes on sliding window protocol, Write shorts notes on Slidin...

Write shorts notes on Sliding Window Protocol To acquire high throughput rates, protocols employ a flow control technique termed as sliding window. Both, the sender and receive

Define locality of reference, Define locality of reference? What are its ty...

Define locality of reference? What are its types?  During the course of implementation of a program memory references by the processor for both the instruction and the data ten

What is an i/o buffer, What is an I/O buffer? I/O buffer: One ty...

What is an I/O buffer? I/O buffer: One type of input-output requirement arises from devices which have a very high character density as disks and tapes. With these chara

Explain gray code, Explain Gray Code Ans. Gray Code 1.  Extreme...

Explain Gray Code Ans. Gray Code 1.  Extremely useful code. Also termed as reflected code. 2.  All gray code is different from the preceding and succeeding codes thr

State some of the uses of ms access, MS Access provides a vast range of fun...

MS Access provides a vast range of functions some of them are ? It is used by small business, departments of large corporations, and by amateurs to make applications on their d

Difference between field-group header and other field groups, What is the d...

What is the difference between field-group header and other field groups? The header field group is a particular field group for the sort criteria.  The system automatically p

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd