Difference between threads and processes, Operating System

Assignment Help:

Difference between threads and processes

1. Thread is flow of implementation. Process is group of instruction which is alike to that of a program except which may be stopped and started by the OS itself.    

2. A Thread is a single sequence stream in a process but process is an execution of program and program contain set of instructions.

3.  Process is able to contain multiple threads.

4.  Threads aren't independent like process.

5.  All threads are able to access every address in the task unlike process.

6.  Threads are designed to support one another and process might or not might be assisting on one another.

7.  Different process cannot work under same memory location and they have their own individual working memory segment. Threads are able to work under same memory area even they can access any memory location.

8.  Processes have the transparency of making all the work within it orderly and as well sum up them. However threads are done for a single unit of task only and at completion their work is all over.

9.  One process is able to run on more than one thread.

10.  Process is a term used to explain the execution of a sequential program .A thread is a point of implementation within the process.

Regard as a system of process of 3 processes p0 through p2 and 4 resource types A,B,C,D. Resource kind A has 4 instances, B has 2 instances, resource C has 3 instances  and D has 1 instances. Assume that, at time T0, we have the subsequent resource-allocation state. Notice whether there is any deadlock.

 

           Current Allocation Matrix      Request Matrix     Available Vector   Existing Vector

               (C)                                      (R)                     (A)                         (E)   

                   A  B  C  D               A  B  C  D                      A  B  C  D          A  B  C  D                                                    

            P0   0   0  1  0                 2   0  0  1                   2  1   0  0            4  2   3  1                                          

            P1   2   0  0  1                 1   0  1  0                                                   

            P2   0   1  2  0                 2   1  0  0        

 

                       p2 requests 2  1  0  0

                      After p2 finishes execution   A = 2  1  0  0 +

                                                                  0  1  2  0           gives    2  2  2  0

 

                      p1 requests 1  0  1  0

                      After p1 finishes execution   A = 2  2  2  0 +

                                                                  2  0  0  1          gives    4  2  2  1

 

                      p0 requests   2  0  0  1

                      After p0 finishes execution   A = 4  2  2  1 +

                                                                    0  0  1  0                gives   4  2  3  1  

 

Thus there is no dead lock during the allocation of resources.

 


Related Discussions:- Difference between threads and processes

What is the use of FIFOs in client-server applications, What is the use of ...

What is the use of FIFOs in client-server applications

Virtual addresses, Virtual addresses are made up of two parts: the ?rst par...

Virtual addresses are made up of two parts: the ?rst part is the page number, and the second part is an offset inside that page. Suppose our pages are 4kb (4096 = 212 bytes) long,

Semaphore, define semaphore. how can we use semaphore to deal with n-proces...

define semaphore. how can we use semaphore to deal with n-process critical section problem.

What is meant by demand paging? explain, What is meant by demand paging? Ex...

What is meant by demand paging? Explain. Demand paging is a technique to implement virtual memory. In demand paging simply when a page is required it is brought into memory. As

Explain the fork-join, Explain the Fork-join This is primitives in a hi...

Explain the Fork-join This is primitives in a higher level programming language for implementing interacting processes. The syntax is like this: fork ; join ; where

List operations to be performed on directories, List operations to be perfo...

List operations to be performed on directories. Search for a file, delete a file, create a file, list a directory, rename a file, and traverse the file system.

System structures, advantages and disadvantages of monolithic and layered a...

advantages and disadvantages of monolithic and layered approach

Windows Resources on a Network, VoIP (Voice over Internet Protocol), also c...

VoIP (Voice over Internet Protocol), also called Internet telephone, was once a novelty on the Internet, but not very useful because of all the problems with poor voice quality and

Define the sleep (sec) function, Define the Sleep (sec) Function Sleep ...

Define the Sleep (sec) Function Sleep function suspends execution of this process for sec number of seconds. While this function is used in our example for consistency, other f

Online Q & A System, It uses unix commands such as forks and pipe .I need s...

It uses unix commands such as forks and pipe .I need solution to this project

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