进程的基础
进程是计算机中最基本的执行单位,是程序在操作系统中的一次执行过程。每个进程都有自己的地址空间、数据栈、程序计数器等,相互之间独立运行,互不干扰。进程间的通信通过特定的机制来实现,进程的创建和撤销由操作系统负责管理。
进程的概念
在操作系统中,进程是指正在运行的程序的一个实例。它包含了程序的代码、数据和执行环境。每个进程都有一个唯一的标识符(进程ID),用于区分不同的进程。
进程和程序的区别
程序是静态的,它是一些保存在磁盘上的指令的有序集合,没有任何执行的概念进程是一个动态的概念,它是程序执行的过程,包括创建、调度和消亡
Linux中的进程包含三个段
①“数据段”
存放的是全局变量、常数以及动态数据分配的数据空间(如ma1loc函数取得的空间) 等。
②“正文段”
存放的是程序中的代码
③“堆栈段”
存放的是函数的返回地址、函数的参数以及程序中的局部变量
进程的状态
一个进程在其生命周期中可能处于不同的状态,常见的进程状态有:
运行(Running):进程正在CPU上执行。
就绪(Ready):进程已经准备好运行,正在等待分配CPU时间片。
阻塞(Blocked):进程由于某些原因无法继续执行,正在等待外部事件的发生,比如等待I/O操作完成。
创建(Created):新创建的进程正在等待被操作系统创建。
终止(Terminated):进程执行完毕或被终止,等待被操作系统回收。