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

Determine about the virtual private networks, Virtual Private Networks (VPN...

Virtual Private Networks (VPN) In order to encrypt/decrypt all the communication network traffic that passes through the Internet or Intranet, a VPN uses software or hardware.

Discuss in brief the history of e-commerce, Discuss in brief the history of...

Discuss in brief the history of E-Commerce. History of E-commerce illustrated below: E-commerce began before personal computers were prevalent and has grown into a multibill

Explain about the prepurchase interaction activity, Explain about the Prepu...

Explain about the Prepurchase Interaction activity. Prepurchase Interaction: This interaction for consumers comprises three activities: • Product or service search and di

Human computer interaction, Preamble The owner of the local shopping mal...

Preamble The owner of the local shopping mall, MaxiMart, has contracted you to assist in the design of an interactive directory. The interactive directory is to be permanently l

Which is the best tool for monitoring weblogic server(wls8), WLS8 handles J...

WLS8 handles JMX but it uses weblogic execution of JMX server. It does not supports generalise sun javax API which can be used with any JVM. There are some patches available which

3 variable k-maps, 3-variable K-maps have 8 squares which arenormally arran...

3-variable K-maps have 8 squares which arenormally arranged in 4 columns and 2 rows.Columns are labeled with 2 variables. The columns are arranged so that either A or B cha

What is the purpose of the enableevents() method, The enableEvents() method...

The enableEvents() method is used to enable an event for a certain object. Normally, an event is enabled when a listener is added to an object for a certain event. The enableEvents

Define underflow and overflow, Define underflow and overflow. Underflow...

Define underflow and overflow. Underflow: If the result the arithmetic operation including n-bit numbers is too small to show by n-bits, underflow is said to occur. Overflow

Explain about the various uses of artificial intelligence, Discuss the use ...

Discuss the use of Artificial intelligence techniques in E-Commerce applications. Explain about the various uses of Artificial Intelligence in Medicine field. Justify it with pr

Change directory command, Your shell must accept a change directory command...

Your shell must accept a change directory command. This will be in the form: cd path  where cd is the change directory command and the path is what you will change the direct

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