linux程序管理和进程(1)

来源:互联网 发布:雅可比矩阵的意义 编辑:程序博客网 时间:2024/06/05 10:57

什么是进程:

一个程序被加载到内存中运行,那么在内存中的那个数据就被称为进程,所有系统上面跑的数据都以进程的类型存在。在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


 

0 0
原创粉丝点击