linux 后台进程,Linux是什么软件
大家好,关于linux 后台进程很多朋友都还不太明白,今天小编就来为大家分享关于Linux是什么软件的知识,希望对各位有所帮助!
怎么查找LINUX的用户进程和后台进程的详细信息!谢谢了
top命令是 Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,默认5秒刷新一下进程列表,所以类似于 Windows的任务管理器。
一、系统整体当下的统计信息
top命令显示的前五行是系统整体的统计信息。
第一行是任务队列信息,同uptime命令的执行结果。eg.
top-15:09:51up17days,3:38,4users,loadaverage:1.09,3.39,4.76
15:09:51当前时间
up17days,3:38系统运行时间,格式为时:分
4users当前登录用户数
loadaverage:1.09,3.39,4.76系统负载,即任务队列的平均长度。
三个数值分别为1分钟、5分钟、15分钟前到现在的平均值。
第二、三行为进程和CPU的信息。当有多个CPU时,这些内容可能会超过两行。eg.
Tasks:115total,1running,114sleeping,0stopped,0zombie
Cpu(s):16.1%us,2.0%sy,0.0%ni,79.5%id,1.4%wa,0.0%hi,1.0%si
Tasks:115total进程总数
1running正在运行进程数
114sleeping睡眠进程数
0stopped停止进程数
0zombie僵尸进程数
Cpu(s):16.1%us用户空间占用CPU百分比
2.0%sy内核空间占用CPU百分比
0.0%ni用户进程空间内改变过优先级的进程占用CPU百分比
79.5%id空闲CPU百分比
1.4%wa等待输入输出的CPU时间百分比
0.0%hi
0.0%si
最后两行为内存信息。eg.
Mem:8169876ktotal,7686472kused,483404kfree,35272kbuffers
Swap:4096532ktotal,160kused,4096372kfree,2477532kcached
Mem:8169876ktotal物理内存总量
7686472kused使用的物理内存总量
483404kfree空闲内存总量
35272kbuffers用作内核缓存的内存量
Swap:4096532ktotal交换分区总量
160kused使用的交换区总量
4096372kfree空闲交换区总量
2477532kcached缓冲的交换区总量。
内存中的内容被换出到交换区,而后又被换入到内存,但使用过的交换区尚未被覆盖,该数值即为这些内容已存在于内存中的交换区的大小。相应的内存再次被换出时可不必再对交换区写入。
二、进程信息
统计信息区域的下方显示了各个进程的详细信息。首先来认识一下各列的含义。
PIDUSERPRNIVIRTRESSHRS%CPU%MEMTIME+COMMAND
序号列名含义
PID进程id
PPID父进程id
RUSERRealusername
UID进程所有者的用户id
USER进程所有者的用户名
GROUP进程所有者的组名
TTY启动进程的终端名。不是从终端启动的进程则显示为?
PR优先级
NInice值。负值表示高优先级,正值表示低优先级
P最后使用的CPU,仅在多CPU环境下有意义
%CPU上次更新到现在的CPU时间占用百分比
TIME进程使用的CPU时间总计,单位秒
TIME+进程使用的CPU时间总计,单位1/100秒
%MEM进程使用的物理内存百分比
VIRT进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
SWAP进程使用的虚拟内存中,被换出的大小,单位kb。
RES进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
CODE可执行代码占用的物理内存大小,单位kb
DATA可执行代码以外的部分(数据段+栈)占用的物理内存大小,单位kb
SHR共享内存大小,单位kb
nFLT页面错误次数
nDRT最后一次写入到现在,被修改过的页面数。
S进程状态。
D=不可中断的睡眠状态
R=运行
S=睡眠
T=跟踪/停止
Z=僵尸进程
COMMAND命令名/命令行
WCHAN若该进程在睡眠,则显示睡眠中的系统函数名
Flags任务标志,参考sched.h
Linux环境下如何终止后台进程
一、&
加在一个命令的最后,可以把这个命令放到后台执行,如gftp&,
二、ctrl+ z
可以将一个正在前台执行的命令放到后台,并且处于暂停状态,不可执行
三、jobs
查看当前有多少在后台运行的命令
jobs-l选项可显示所有任务的PID,jobs的状态可以是running, stopped, Terminated,但是如果任务被终止了(kill),shell从当前的shell环境已知的列表中删除任务的进程标识;也就是说,jobs命令显示的是当前shell环境中所起的后台正在运行或者被挂起的任务信息;
四、fg
将后台中的命令调至前台继续运行
如果后台中有多个命令,可以用 fg%jobnumber将选中的命令调出,%jobnumber是通过jobs命令查到的后台正在执行的命令的序号(不是pid)
五、bg
将一个在后台暂停的命令,变成继续执行(在后台执行)
如果后台中有多个命令,可以用bg%jobnumber将选中的命令调出,%jobnumber是通过jobs命令查到的后台正在执行的命令的序号(不是pid)
将任务转移到后台运行:
先ctrl+ z;再bg,这样进程就被移到后台运行,终端还能继续接受命令。
概念:当前任务
如果后台的任务号有2个,[1],[2];如果当第一个后台任务顺利执行完毕,第二个后台任务还在执行中时,当前任务便会自动变成后台任务号码“[2]”的后台任务。所以可以得出一点,即当前任务是会变动的。当用户输入“fg”、“bg”和“stop”等命令时,如果不加任何引号,则所变动的均是当前任务
进程的终止
后台进程的终止:
方法一:
通过jobs命令查看job号(假设为num),然后执行kill%num
方法二:
通过ps命令查看job的进程号(PID,假设为pid),然后执行kill pid
前台进程的终止:
ctrl+c
kill的其他作用
kill除了可以终止进程,还能给进程发送其它信号,使用kill-l可以察看kill支持的信号。
SIGTERM是不带参数时kill发送的信号,意思是要进程终止运行,但执行与否还得看进程是否支持。如果进程还没有终止,可以使用kill-SIGKILL pid,这是由内核来终止进程,进程不能监听这个信号。
进程的挂起
1)、后台进程的挂起:
在solaris中通过stop命令执行,通过jobs命令查看job号(假设为num),然后执行stop%num;
在redhat中,不存在stop命令,可通过执行命令kill-stop PID,将进程挂起;
当要重新执行当前被挂起的任务时,通过bg%num即可将挂起的job的状态由stopped改为running,仍在后台执行;当需要改为在前台执行时,执行命令fg%num即可;
2)、前台进程的挂起:
ctrl+Z;
Linux中怎么终止正在运行的后台程序
xkill应用程序可以帮助你快速杀死你的桌面上的任何图形窗口。
1、通过按下Ctrl+ Alt+ Esc键可激活此快捷方式。您的光标会变成一个X.点击窗口与xkill功能来确定哪些进程与该窗口关联,然后立即杀掉该进程。该窗口将瞬间关闭。
2、Linux桌面有一个工具system monitor,它的工作方式类似于Windows任务管理器,打开系统监视器工具查看运行进程列表,可以强制关闭它们。
3、从终端关闭。比方说,Firefox是在后台运行,我们希望从终端杀死它。您可以运行如下命令:grep firefox这将列出所有的进程,你只要kill对应的进程就可以了
4、killall命令就像pkill的,但有点更精确。它会杀了具有特定名称的所有正在运行的进程。因此运行killall firefox所有运行的火狐进程