程序是计算机存储系统中的数据文件
-源代码程序
·文本文件,描述程序行为和功能
-可执行程序
·二进制文件,直接加载并执行
进程的概念
-广义概念
·程序关于某个数据集合的一次运动活动
-狭义概念
·程序被加载到内存中执行后得到进程
程序和进程的联系
-一个程序可能对应多个进程
·一个程序多次运行,每次运行产生一个进程
-一个进程可能包含多个程序
·一个程序依赖多个其他动态库
ps:在当代系统中,资源分配的基本单位是进程;而CPU调度执行的基本单位是线程!
线程的概念
-进程内的一个执行单元
-操作系统中一个可调度的实体
-进程中相对独立的一个控制流序列
-执行时的现场数据和其他调度所需的信息
深入理解进程和线程
-进程中可存在多个线程共享进程资源
-线程是被调度的执行单元,而进程不是调度单元
-线程不能脱离进程单独存在,只能依赖于进程运行
-线程有生命期,有诞生和死亡
-任意线程都可以创建其他新的线程
总结:
-程序是物理存储空间中的数据文件
-进程是程序运行后得到的执行实体
-线程是进程内部的具体执行单元
-一个进程内部可以有多个线程存在
-进程是操作系统资源分配的基本单位
-线程是操作系统调度执行的基本单位