what is the difference between fork and thread ?
and parent and child process in fork system call?

Answers were Sorted based on User's Feedback



what is the difference between fork and thread ? and parent and child process in fork system call?..

Answer / amith

fork() system call in UNIX causes creation of a new process
the new process (child process) which is an exact copy of
the calling process(parent process).return value from fork
() is used to distinguish the parent from the child; the
parent receives the child's process id, but the child
receives zero.

A thread is a stream of instructions that can be scheduled
as an independent unit.

A thread is a stream of instructions that can be scheduled
as an independent unit. It is important to understand the
difference between a thread and a process. A process
contains two kinds of information: resources that are
available to the entire process such as program
instructions, global data and working directory, and
schedulable entities, which include program counters and
stacks. A thread is an entity within a process that
consists of the schedulable part of the process.

A fork() duplicates all the threads of a process. The
problem with this is that fork() in a process where threads
work with external resources may corrupt those resources
(e.g., writing duplicate records to a file) because neither
thread may know that the fork() has occurred.

When a new perl thread is created, all the data associated
with the current thread is copied to the new thread, and is
subsequently private to that new thread! This is similar in
feel to what happens when a UNIX process forks, except that
in this case, the data is just copied to a different part
of memory within the same process rather than a real fork
taking place.

A fork() induces a parent-child relationship between two
processes. Thread creation induces a peer relationship
between all the threads of a process.

Is This Answer Correct ?    25 Yes 6 No

what is the difference between fork and thread ? and parent and child process in fork system call?..

Answer / nanda

for() creates a new process which copy of parent only PID
is different.thread create within process except stack it
shares memory

example:
global variable seterrno is shared by multiple threads

Is This Answer Correct ?    13 Yes 12 No

what is the difference between fork and thread ? and parent and child process in fork system call?..

Answer / venkatamahalakshmaiah

what an answer Nanda..u shuld be kept in a museum..

Is This Answer Correct ?    7 Yes 13 No

Post New Answer

More Linux AllOther Interview Questions

What are the main differences between RHEL4 & RHEL5?

11 Answers  


How find out drivers of installed devices in linux (RHEL)?

2 Answers  


what is difference between inetd and xinetd

2 Answers  


How to give 2 different gateway IP addresses for 2 different interfaces in same system ?

5 Answers   Toyota,


Friends, I don't have enough free space in root directory. but in home directory I have 40gb free. So I can not install anything in root directory (which occupies more space) Please suggest me If there is any possibility to increase the root directory size by minimising the home directory's.

3 Answers  






How to catagories tickets in RHEL, which tickets are belong to PROBLEM, INCIDENT and CHANGE management? please given to me with examples

0 Answers  


plz mention some interesting problems you faced and how you solved it?

0 Answers  


What is the difference between ext3 and ext4?

0 Answers   IBM,


How can i recover the linux system after it was crashed by step by step process..

3 Answers   IBM,


How to sort a file of size 2N bytes, if I have N bytes of memory?

2 Answers   Yahoo,


This question is belong to linux support. "one of my customer told to me, my application is getting slow response". how to resolve the issue. what are the steps you will follow to resolve the issue.

0 Answers  


what are the steps for Password-less ssh

5 Answers   IBM, Mind Tree,


Categories