进程
定义:
可并发执行的程序在数据集上的一次动态执行过程。
线程
定义
程序执行的最小的单位。
一个进程可以有多个线程,他们共享进程的资源。
程序
定义
程序是指令的有序集合。
进程和线程的区别
- 拥有资源
进程是资源分配的基本单位,但线程不拥有资源,线程可以访问隶属进程的资源。 - 调度
线程是独立调度的基本单位,在同一进程内,线程的切换不会引起进程的切换,从一个进程中的线程切换到另一个进程中的线程是,会引起进程切换。 - 系统开销
创建或撤销进程的开销远大于创建或者撤销线程的开销。
进程切换产生的开销也远大于线程切换产生的开销。 - 通信方面
线程间可以通过直接读写同一进程中的数据进行通信,但是进程的通信需要借住IPC。 - 对应性
一个进程可包含多个线程。一个线程只能属于一个进程。
进程和程序的区别
- 持续性
程序是永存的。进程是暂时的,进程是程序的一次动态执行过程。 - 动态性
程序是静态的观念。进程是动态的观念。 - 并发性
程序没有并发性,进程具有并发性。 - 拥有资源
进程系统资源分配的基本单位。 - 对应性
一个程序可对应多个进程。
一个进程也可以执行一个或者多个程序。