网站地图    收藏   

主页 > 系统 > linux系统 >

Linux学习笔记_8_进程管理_1_进程的概念 - Linux操作

来源:自学PHP网    时间:2015-04-14 10:28 作者: 阅读:

[导读] 一、程序与进程的区别1、程序是静态概念,本身作为一种软件资源长期保存;而进程是程序的执行过程,它是动态概 念,有一定的生命期,是动态产生和消亡的。 2、程序和进程无一一对应关...

一、程序与进程的区别

1、程序是静态概念,本身作为一种软件资源长期保存;而进程是程序的执行过程,它是动态概 念,有一定的生命期,是动态产生和消亡的。

2、程序和进程无一一对应关系。一个程序可以由多个进程共用;另一方面,一个进程在活动中有 可顺序地执行若干个程序。

二、父进程【PPID】与子进程【PID】

1、子进程是由一个进程所产生的进程,产生这个 子进程的进程称为父进程。

2、在Linux系统中,使用系统调用fork创建进程。 fork复制的内容包括父进程的数据和堆栈段以及父进程的进程环境。

3、父进程终止子进程自然终止。

4、两种特殊情况

(1)父进程终止,子进程依然存在,子进程变成孤儿进程,其自动PPID指向init

(2)子进程死亡,父进程不知到,子进程变成僵尸进程

三、前台进程与后台进程

前台进程:

在Shell提示处敲入命令后,创建一个子进程【父进程是Shell】,运行命令,Shell等待命令退出,然后返回到对用户给出提示符。这条命令与Shell异步运行,即在前台运行,用户在 它完成之前不能执行另一个命令。

后台进程:

在Shell提示处敲入命令,若后随一个&,Shell创建的子 进程运行此命令,但不用等待命令退出,而直接返回到对用户给出提示。这条命令与Shell同步运行,即在后台运 行。后台进程必须是非交互式的。

如:find /home -name init > test/tmp.txt

四、进程状态

就绪状态:进程已经分配到资源,但因为 其它进程正占用 CPU,所以暂时不 能运行而等待分配 CPU的状态。

等待状态:因等待某种 事件而暂时不能运 行的状态。

运行状态:进程分配到 CPU,正在处理器 上运行。

\

 

五、进程状态细化

用户态运行:在CPU上执行用户代码

核心态运行:在CPU上执行核心代码

在内存就绪:具备运行条件,只等调度程序为它分配CPU

在内存睡眠:因等待某一事件的发生,而在内存中排队等待

在外存就绪:就绪进程被交换到外存上继续处于就绪状态

在外存睡眠:睡眠进程被交换到外存上继续等待

在内存暂停:因调用stop程序而进入跟踪暂停状态,等待其父进程发送命令。

在外存暂停:处于跟踪暂停态的进程被交换到外存上

创建态:新进程正在被创建、但尚未完毕的中间状态

终止态:进程终止自己 \

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论