Fork mystries....
Aziz Kezzou
french.linuxian at gmail.com
Sat Jun 4 20:19:40 GMT 2005
Thank you guys,
I got it fork is creating a different process.
Currently, I am working a lot that I forget even the basic principales ;-)
I need a break ...
-aziz
On 6/3/05, ray at redshift.com <ray at redshift.com> wrote:
> Aziz,
>
> Fork is for process creation. Look up pthread_create() and/or POSIX
> thread
> creation, etc. You should be able to find a lot of info on google with a
> quick
> search:
>
> http://math.arizona.edu/~swig/documentation/pthreads/
>
> From the OS standpoint a process is like a different program when you fork
> it.
> A thread is more like a single program with a bunch of subsections all
> running
> at the same time, then the OS and CPU jump back and forth giving a little
> run-time to each subsection. Threads share a common space; processes [as
> far as
> I recal] do not (which is where inter process communication comes into
> play).
>
> Anyway, have fun! :)
>
> Ray
>
>
> At 07:55 PM 6/3/2005 -0400, Aziz Kezzou wrote:
> | Hi all,
> | It's probably not the right mailing list to ask but I am really
> | surprised about global variable sharing in a multithreaded C
> | application. If I remember well my multithreading course global
> | variables are shared between threads, right ?
> |
> | Example :
> | ----------------------------
> | int counter = 0;
> | int main() {
> | if( fork()==0) {
> | while(1) {
> | sleep(1);
> | counter++;
> | printf("Son : counter = %d\n", counter);
> | }
> | } else {
> | while(1) {
> | sleep(1);
> | printf("Parent : counter = %d\n", counter);
> | }
> | }
> | return 0;
> | }
> | ----------------------------
> |
> | All I get is :
> | Parent : counter = 0
> | Son : counter = 1
> | Son : counter = 2
> | Parent : counter = 0
> | Son : counter = 3
> | Parent : counter = 0
> | Son : counter = 4
> | Parent : counter = 0
> |
> | why counter isn't shared between the two threads ??!
> | thanks,
> | -aziz
> | _______________________________________________
> | freebsd-hackers at freebsd.org mailing list
> | http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
> | To unsubscribe, send any mail to
> "freebsd-hackers-unsubscribe at freebsd.org"
> |
> |
>
More information about the freebsd-hackers
mailing list