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

Define edge triggered d flip flop, Define Edge Triggered D flip-flop? D...

Define Edge Triggered D flip-flop? D latch has only two inputs C(control) and D(data). The operation of a D flip-flop is a lot simpler and it has only one input addition to the

-bit comparator using combinational logic, Design a 4-bit comparator using ...

Design a 4-bit comparator using combinational logic, and Karnaugh Maps. The inputs of the circuit are two 2-bit numbers. a) Construct the truth table given 2-bits inputs A and B, a

Overview of the dreamweaver work area, Q. Overview of the Dreamweaver work ...

Q. Overview of the Dreamweaver work area? Let's start with a brief overview of the Dreamweaver work area. If you haven't already launched Dreamweaver, double-click Dreamweaver

Initial considerations in problem solving, Initial considerations in proble...

Initial considerations in problem solving: Three initial considerations in problem solving for easiest(as described in Russell and Norvig):  Initial State  First

What do you mean by information system, Q. What do you mean by Information ...

Q. What do you mean by Information System? An information system is an planned combination of hardware, people, communication networks, software and data resources that transfo

What are the probabilities that the patient has the virus, In a clinic 0.15...

In a clinic 0.15 of the patients have got the HIV virus. Assume a blood test is carried out on a patient. If the patient has got the virus the test will turn out positive with prob

Explain latex in matlab, Matlab already handles naturally easy LaTeX encodi...

Matlab already handles naturally easy LaTeX encodings that permit introducing Greek lettters or modifying the font size and appearance in plots.

What are the advantages of using xml over html, What are the advantages of ...

What are the advantages of using XML over HTML?  The root cause of the problem lies in HTML (Hyper Text Mark-up Language), the defacto standard for web publication. The main pr

What is visualisation - search based tools, Q. What is Visualisation - sear...

Q. What is Visualisation - search based tools? Visualization is a common method in contract to search based tools. In this scheme visual aids are supplied as pictures to help p

Input-output-processor interconnection network (iopin), Input-Output-Proces...

Input-Output-Processor Interconnection Network (IOPIN): This interconnection network is designed for communication between I/O Channels and processors. Every single one proces

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