加入收藏 | 设为首页 | 会员中心 | 我要投稿 佛山站长网 (https://www.0757zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

linux系统编程之进程(一) 进程概述

发布时间:2013-10-13 09:04:46 所属栏目:Linux 来源:站长网
导读:一、什么是进程 从用户的角度来看进程是程序的一次执行过程。 从操作系统的核心来看,进程是操作系统分配的内存、CPU时间片等资源的基本单位。 进程是资源分配
一、什么是进程

从用户的角度来看进程是程序的一次执行过程。

从操作系统的核心来看,进程是操作系统分配的内存、CPU时间片等资源的基本单位。

进程是资源分配的最小单位。

每一个进程都有自己独立的地址空间与执行状态。

像UNIX这样的多任务操作系统能够让许多程序同时运行,每一个运行着的程序就构成了一个进程。

二、进程数据结构

进程的静态描述:由三部分组成:PCB、有关程序段和该程序段对其进行操作的数据结构集。

进程控制块:用于描述进程情况及控制进程运行所需的全部信息。

代码段:是进程中能被进程调度程序在CPU上执行的程序代码段。

数据段:一个进程的数据段,可以是进程对应的程序加工处理的原始数据,也可以是程序执行后产生的中间或最终数据

堆栈段:程序运行时需要在这里做数据运算,存储临时数据,开辟函数栈等。在Linux下,栈是高地址往低地址增长的。

三、进程与程序

进程是动态的,程序是静态的。

进程的生命周期是相对短暂的,而程序是永久的。

进程数据结构PCB。

一个进程只能对应一个程序,一个程序可以对应多个进程。

四、进程状态变迁

运行状态(TASK_RUNNING)

可中断睡眠状态(TASK_INTERRUPTIBLE)

不可中断睡眠状态(TASK_UNINTERRUPTIBLE)

暂停状态(TASK_STOPPED)

僵死状态(TASK_ZOMBIE)

(编辑:佛山站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读