在linux系统中,系统将进程和线程同等看待。
而创建过程中也是使用相同的函数clone,唯一的区别是向clone传递的参数不同,传递一种参数时,从编程者的角度来看创建的是进程,而传递另外一种参数时,创建的线程。
这个参数区分了线程和进程。往往这些参数标示了 线程共享了哪些资源。
比如创建进程可以传递参数clone(SIGCHLD, 0);
创建一个线程传递参数clone(CLONE_VM | CLONE_FS | CLONE_FILES | CLONE_SIGHAND, 0); 注:在这里线程见共享的资源是:地址空间,文件系统信息,文件和信号处理函数等。
参考文献:http://blog.chinaunix.net/uid-24567872-id-100482.html