Linux的线程

1.Linux没有真正意义上的线程,Linux的线程其实也是进程,只不过是可以共享父进程的地址空间,文件描述符表,文件系统信息,信号处理程序的子进程。

2.无论进程,轻进程还是线程,Linux内核统一用task_struct结构体表征,所以,从Linux内核的角度看,只有任务。

3.使用pthread线程库在Linux下创建线程,创建线程的函数是pthread_create,最终是通过调用clone系统调用来创建一个子进程,在调用参数上指定了需要与父进程共享的资源。

4.进程有自己独立的地址空间,从低地址到高地址,依次是text段,data段,bss段,堆,栈。线程共享进程的地址空间,有自己独立的栈,线程的栈是在进程的堆上分配的。

你可能感兴趣的:(Linux的线程)