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

Explain chaining to handle collision, Explain Chaining to Handle Collision ...

Explain Chaining to Handle Collision Chaining:  One easy scheme is to chain all collisions in lists attached to the suitable slot. This permits an unlimited number of collision

List the four steps that are essential to run a program, List the four step...

List the four steps that are essential to run a program on a completely dedicated machine. a. Reserve machine time. b. Manually load program into memory. c. Load starting

Describe paging technique used in unix systems, Describe paging technique u...

Describe paging technique used in UNIX systems. When a process begin in UNIX, not every its memory pages are read in from the disk at once. In its place, the kernel loads into

Determine utilization of cpu and the paging disk, Q. Consider the demand-p...

Q. Consider the demand-paged computer system where the level of multiprogramming is currently fixed at four. The system was recently deliberate to determine utilization of CPU and

Provide two programming examples of multithreading, Normal 0 fa...

Normal 0 false false false EN-IN X-NONE X-NONE MicrosoftInternetExplorer4 Provide two programm

Explain independent process and a cooperating process, Question: a) Ea...

Question: a) Each process is represented in the operating system by a process control block (PCB). The PCB contains many pieces of information associated with a specific proce

Load sharing , Load Sharing : Processes are not given to a particular proc...

Load Sharing : Processes are not given to a particular processor. A global queue of threads is used to maintain. Each processor, when idle, picks a thread from this queue. Note th

Explain fixed partitioning, Explain fixed partitioning. Partitioning ar...

Explain fixed partitioning. Partitioning are the simpler techniques that don't involve virtual memory. Partitioning has been used in numerous variations in operating systems.

What is the cache coherency problem, Question: (a) Modern processors op...

Question: (a) Modern processors operate in one of two modes: one for the operating system and one for applications. What is the purpose of having these two modes? What are

What problems arise if the directory is a general graph, What problems aris...

What problems arise if the directory structure is a general graph? Searching for a particular file may result in searching the similar directory many times. Deletion of the fil

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