目录
进程是正在执行的程序,是大多数系统中的工作单元。进程需要一定的资源 (如CPU时间、内存、文件和 I/O设备) 来完成其任务。这些资源在创建进程或执行进程时被分配。
进程在运行时既可以包含一个线程,也可以包含多线程进程。
进程的概念
什么是进程?
- 进程是正在执行的程序,是大多数系统中的工作单元。
- 程序代码(文本段 | 代码段);
- 当前活动(程序计数器的值 和 处理器寄存器的内容);
- 堆栈段(临时数据、函数参数、返回地址、局部变量);
- 数据段(全局变量);
- 堆(进程运行期间动态分配的内存);
进程和程序的区别:
- 程序是驻留在某些存储中的被动实体; 如存储在磁盘上的文件内容( 常被称为可执行文件 )。而进程是一个活动的实体,它包含除程序之外的许多资源。
- 当一个可执行文件被装入内存时,一个程序才能成为进程。
许多进程可能运行相同的程序。但是:
- 它们被认为是独立的执行序列,尽管它们共享相同的程序代码; 但是数据段、堆、堆栈段却不同。 一个进程在执行时产生许多进程是很常见的。
进程的状态
当一个进程执行时,它会改变状态。进程的状态由其当前活动定义。
- 新的:正在创建进程
- 运行:正在执行指令
- 等待:进程正在等待某些事件的发生;(如等待 I/O读取)
- 就绪:进程正在等待分配给处理器;
- 终止:进程已经完成了它的执行。
进程状态图:
进程控制块
进程在操作系统中如何表示&