进程的定义
- 程序:程序是存放在存储介质上的一个可执行文件。
- 进程:进程是程序的执行实例,包括程序计数器、寄存器和变量的当前值。
程序是静态的,进程是动态的:
程序是一些指令的有序集合,而进程是程序执行的过程。进程的状态是变化的,其包括进程的创建、调度和消亡。
在linux系统中,进程是管理事务的基本单元。
进程拥有自己独立的处理环境和系统资源(处理器、存储器、I/O设备、数据、程序)。
可使用exec函数由内核将程序读入内存,使其执行起来成为一个进程。
使用./执行程序时最终调用exec系统函数
进程整个生命周期可以简单划分为三种状态:
- 就绪态:进程已经具备执行的一切条件,正在等待分配CPU的处理时间。
- 执行态:该进程正在占用CPU运行。
- 等待态:进程因不具备某些执行条件而暂时无法继续执行的状态。
类比:排队买10张票(就绪态)-----买票最多5张(执行态)-----再排队-----买票钱不够-----取钱(等待态)------排队-----
进程控制块(PCB)
OS是根据PCB来对并发执行的进程进行控制和管理的。系统在创建一个进程的时候会开辟一段内存空间存 放与此进程相关的PCB数据结构。
PCB是操作系统中最重要的记录型数据结构。PCB中记录