一、什么是进程
进程就是正在运行中的程序,例如打开一个软件或文件,它就是一个正在运行的进程。
程序运行时系统就会创建一个进程,并为它分配资源(一块独立的内存空间),然后把该进程放入进程就绪队列,进程调度器选中它的时候就会为它分配CPU时间,程序开始真正运行。
所以,进程的内存空间是独立的,进程是资源(CPU、内存等)分配的基本单位。
二、 什么是线程
一个进程可以由很多个线程组成,线程间共享进程的所有资源,每个线程有自己的堆栈和局部变量。
线程是一条执行路径,是程序执行时的最小单位,它是进程的一个执行流,是CPU调度和分派的基本单位。
线程由CPU独立调度执行,在多CPU环境下就允许多个线程同时运行。