进程是资源分配单位,线程是cpu调度单位;.这个资源包含了内存,我们打开的文件等等.... 线程是cpu调度的单位,cpu是一种特殊的资源,它主要强调的是我们执行控制流所需要的一些信息。
进程拥有一个完整的资源平台,而线程只独享必不可的资源,如寄存器和栈。
线程同样具有就绪,阻塞和执行三种基本状态,同样具有状态之间的转换关系。
线程能减少并发执行的时间和空间开销
-线程的创建时间比进程短,线程创建是时候直接重用线程所属的进程已经管理好的这些资源。
-线程的终止时间比进程短,同理的的终止时间比较短,因为它不需要考虑那些资源释放的问题。
-同一进程内的线程切换时间比进程短,因为属于同一个进程的线程具有同一个页表,它切换的时候不需要切换内存管理的页表,而进程的切换需要切换页表,开销比较大他们的有些信息不一样需要重新加载。
-由于同一进程的各线程间共享内存和文件资源,可直接进行不通过内核的通信,直接通过内存地址就可以访问到。