What is Difference between thread and process?
Answer Posted / p govind rao (bangalore)
A thread is in fact just that, a thread. Something simple.
A simple chain of computing that is set up as in 'a row'. A
chain of commands that can be useful to the programmers
needs.
Sometimes the programmers can actually control the flow of
events that take place, but most commonly that is up to the
programming language to do it for him.
Most useful is the 'multichannel' programming threads, that
are distributed along different paths to be gathered up in
the end.
Each thread can then be processed independently of each-
other in a multiprocessor environment. Therefore
these 'threads' can be assembled (sometimes) and put
forward to the user at a higher speed the otherwise
possible.
Process is a program in execution where as thread is a
seperate path of execution in a program.
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 interprocess 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.
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.
thread is a light weight process and process is heavy
weight means to say process occurs many threads and
superset of threads and also says threads are sub set of
process
Process is a memory block of an application instance.
Thread is a memory block of a process instance.
| Is This Answer Correct ? | 3 Yes | 1 No |
Post New Answer View All Answers
Is a directory a regular file?
When does thrashing occur?
Explain the concept of the multi-programmed operating systems?
Is there a 86 bit operating system?
How do I copy a full file path?
Should I install 32 or 64 bit?
What is the use of Synchronized keyword?
What are different types of interprocess communication methods?
Explain latency, transfer and seek time with respect to disk i/o.?
Can I have two browsers on my computer?
Explain about loader and the functions executed by them?
What are the 7 c's of communication?
Explain how a copying garbage collector works. How can it be implemented using semispaces?
Suppose if we have a variable 'I' in run method, if I can create one or more thread each thread will occupy a separate copy or same variable will be shared?
What are the deadlock avoidance schemes?