Wednesday, March 31, 2010

Threads and Processes

First Answer:


The major difference between threads and processes is 
1. Threads share the address space of the process that
created it; processes have their own address.

2. Threads have direct access to the data segment of its
process; processes have their own copy of the data segment
of the parent process.

3. Threads can directly communicate with other threads of
its process; processes must use inter-process communication
to communicate with sibling processes.

4. Threads have almost no overhead; processes have
considerable overhead.

5. New threads are easily created; new processes require
duplication of the parent process.

6. Threads can exercise considerable control over threads of
the same process; processes can only exercise control over
child processes.

7. Changes to the main thread (cancellation, priority
change, etc.) may affect the behavior of the other threads
of the process; changes to the parent process does not
affect child processes.


Second Answer:


process is a execution of a program and program contain set 
of instructions but thread is a single sequence stream
within the process.thread is sometime called lightweight
process. single thread alows a os to perform singler task
ata time


Similarities between process and threads are: 
1)share cpu.
2)sequential execution
3)create child
4)if one thread is blocked then the next will be start to
run like process.


 
Dissimilarities:
1)threads are not independent like process.
2)all threads can access every address in the task unlike
process.
3)threads are design to assist onr another and process
might or not might be assisted on one another.

No comments:

Post a Comment