线程和过程的区别和联系

线程和进程的区别和联系
                     浅谈线程和进程
   进程可以理解为一个应用程序在处理机上的一次执行过程,而线程是进程中的一部分,一个进程运行包含多个线程的运行。进程是一个具有独立功能的程序对数据进行处理的一次活动,可以申请和拥有系统资源,是一个活动的实体。它不只是程序的代码,还包括当前的活动,通过程序计数器的值和处理寄存器的内容来表示。进程是“执行中的程序,它们可以利用进程中的资源。在引入线程的操作系统中,进程一般作为分配资源的基本单位,线程作为独立运行和独立调度的基本单位。线程基本上不拥有系统资源。
    线程和进程的区别在于,子进程和父进程有不同的代码和数据空间,而多个线程则共享数据空间。
    线程与进程的区别(百度):
a.地址空间和其它资源:进程间相互独立,同一进程的各线程间共享。某进程内的线程在其它进程不可见。
b.通信:进程间通信IPC,线程间可以直接读写进程数据段(如全局变量)来进行通信——需要进程同步和互斥手段的辅助,以保证数据的一致性。
c.调度和切换:线程上下文切换比进程上下文切换要快得多。
d.在多线程OS中,进程不是一个可执行的实体。