linux程序管理和进程(1)
什么是进程:
一个程序被加载到内存中运行,那么在内存中的那个数据就被称为进程,所有系统上面跑的数据都以进程的类型存在。在linux系统中,触发任何一个事件,系统都会定义为一个进程,并且给予这个进程一个ID,称为PID,同时触发这个进程的用户与相关属性关系,给予这个PID一组有效的权限设置。
举个常见的例子:登陆操作系统时,通常是利用连接进程或者直接在主机登陆,然后取得shell,在/bin/bash,也就是每个人登陆都是执行/bin/bash,不过每个人取得的权限不同。也就是说党我们登陆并执行bash时,系统以及给了我们一个PID,这个PID是根据登陆人的UID/GID来的,我们都知道/bin/bash是一个程序,当这个进程进行其他工作时,比如touch命令等,那么由这个程序衍生出的其他进程在一般情况下,也会沿用这个进程的相关权限。也就是bash是父进程,其他命令是子进程。
工作管理(job control):
这个工作管理是用在bash环境下的,也就是当我们登陆系统取得bash shell之后,在单一终端机下同时进行多个工作的行为管理。
假设只有一个终端,因此在可以出现提示符让你操作的环境成为前台(foreground),至于其他工作可以放入后台(background)去暂停或者运行,要注意的是,放入后台的工作想要运行,。必须不能够与用户互动,且放入后台的工作是不能用ctrl+c来终止的。
工作管理的命令:
直接讲命令丢到后台中执行的 & 这样的好处是不怕被ctrl+c中断
将目前的工作丢到后台中暂停 ctrl-z 如果正在使用vi,需要到bash环境下进行查找,此时没必要结束vi,只要暂停vi丢到后台中等待即可。、
查看目前的后台工作状态 jobs
将后台工作拿到前台处理:fg
让后台的工作由暂停变为运行中 bg
管理后台当中的工作:kill
posted on 2016-07-19 20:08 sichenzhao 阅读(89) 评论(0) 编辑 收藏 举报