Linux 系统中时刻运行着许多的进程,如果能够合理的管理它们,有益于系统性能的优化,

系统进程总共有五种不同的状态:

命令一:ps命令,用于查看系统中进程状态

格式:ps [参数]

查看进程与状态:ps -aux

查找某个特定的进程信息:ps -aux | grep 进程名

命令二:top命令,用于监视进程的活动与系统负载,格式为“top”

top命令类似于“强化版的Windows任务管理器”,命令行中输入top后如下所示:

top - :: up  :,   users,  load average: 0.00, 0.01, 0.05
Tasks: total, running, sleeping, stopped, zombie
%Cpu(s): 0.3 us, 0.3 sy, 0.0 ni, 99.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : total, free, used, buff/cache
KiB Swap: total, free, used. avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
root S 0.3 0.3 :06.33 vmtoolsd
root S 0.3 1.0 :06.21 vmtoolsd
root R 0.3 0.1 :00.05 top
root S 0.0 0.4 :05.67 systemd
root S 0.0 0.0 :00.01 kthreadd
root S 0.0 0.0 :00.16 ksoftirqd/
root rt S 0.0 0.0 :00.00 migration/
root S 0.0 0.0 :00.00 rcu_bh
root S 0.0 0.0 :00.00 rcuob/
root S 0.0 0.0 :00.00 rcuob/
root S 0.0 0.0 :00.00 rcuob/
root S 0.0 0.0 :00.00 rcuob/
root S 0.0 0.0 :00.00 rcuob/
root S 0.0 0.0 :00.00 rcuob/
root S 0.0 0.0 :00.00 rcuob/
root S 0.0 0.0 :00.00 rcuob/
root S 0.0 0.0 :00.00 rcuob/
root S 0.0 0.0 :00.00 rcuob/
root S 0.0 0.0 :00.00 rcuob/
root S 0.0 0.0 :00.00 rcuob/
root S 0.0 0.0 :00.00 rcuob/

前五行为系统整体的统计信息,具体如下:

命令三:pidof命令:用于查询某个特定程序的进程PID,格式为pidof [参数] [程序名称]

查询“sshd”进程的pid值:“pidof sshd”

[root@localhost ~]# pidof sshd
  

命令四:kill命令,用于中止某个特定PID号码的进程,格式为kill [参数] [进程PID号]

强制中止PID为8302的进程(参数-9代表强制终止):

[root@localhost ~]# kill - 

命令五:killall命令,用于终止某个特定名称的所有进程,格式为killall [参数] [进程名称]

终止名称为“sshd”的进程:

[root@localhost ~]# killall sshd

命令6:Ctrl+c、Ctrl+z、jobs、bg、fg命令

在终端中运行了一个命令后如果想立刻停止它,可以使用组合键ctrl+c,这样命令的进程将会彻底的

被终止。而ctrl+z是将命令的进程暂停(也叫挂载到后台或扔到后台)。

实例1:通过putty等工具连接远程linux主机,连接两个终端,分别为终端1和终端2,执行以下命令,

命令达到的效果为每秒向家目录的jobs.txt中追加一个字符串working

如下图所示:输入ctrl + z 后,终端2的命令的进程被暂停,终端1中的内容也不再追加

此时,使用jobs命令查看所有在后台运行着的进程:

[root@localhost ~]# jobs
[] 已停止 ( while true; do
echo -n "working" >> ~/jobs.txt; sleep ;
done )
[]- 已停止 ( while true; do
echo -n "working" >> ~/jobs.txt; sleep ;
done )
[]+ 已停止 ( while true; do
echo -n "working" >> ~/jobs.txt; sleep ;
done )

在终端2中运行“bg 1” 命令,让后台的程序继续执行,此时终端1中的内容继续增加

在终端2中使用fg 1命令,将后台的进程调回到前台,程序依然执行,然后此时终端1中的内容又继续增加中

有些命令在执行时会不断的在终端中输出信息,影响到我们继续输入命令了,此时

便可以在这条命令的后面添加一个“&”符号,那么从一开始执行该命令就是在后台运行

(注意:不是在后台暂停,而是在后台运行),这个实验可以只用到一个终端,在终端中加入&后

可以继续使用tail -f jobs.txt进行查看,而且jobs.txt中的内容也确实一直在增加中...

Linux系统监视资源与进程管理的更多相关文章

  1. Linux内核学习笔记-2.进程管理

    原创文章,转载请注明:Linux内核学习笔记-2.进程管理) By Lucio.Yang 部分内容来自:Linux Kernel Development(Third Edition),Robert L ...

  2. Linux系统的用户和用户组管理

    一.用户账户管理 Linux/Unix是一个用户.多任务的操作系统:在讲Linux账号及账户组管理之前,先简单了解一下多用户.多任务操作系统的基本概念. Linux的单用户多任务 在Linux下,当你 ...

  3. Android 系统回收资源时进程被杀的优先级

    http://developer.android.com/guide/components/processes-and-threads.html#Processes Android 操作系统的内存回收 ...

  4. 脚本_查找 Linux 系统中的僵尸进程

    #!bin/bash#功能:查找Linux系统中的僵尸进程#作者:liusingbon#使用awk判断ps命令输出的第8列为Z时,显示该进程的 PID 和进程命令ps aux |awk '{if($8 ...

  5. 20个Linux系统监视工具

    需要监视Linux服务器的性能?试试这些内置的命令和一些附加的工具吧.大多数Linux发行版都集成了一些监视工具.这些工具可以获取有关系统活动的信息的详细指标.通过这些工具,你可以发现产生系统性能问题 ...

  6. Linux系统监视工具

    转自      http://bbs.51cto.com/thread-971896-1.html # 1: top – 查看活动进程的命令TOP工具能够实时显示系统中各个进程的资源占用状况.默认情况 ...

  7. Linux下取代top的进程管理工具 htop

    一.htop 简介 This is htop, an interactive process viewer for Linux. It is a text-mode application (for ...

  8. Linux常用命令_(进程管理)

    进程管理:ps.top.kill 指令名称:ps语法:ps [选项]-a显示所有终端机下执行的程序.-e显示所有程序.-f显示UID,PPIP,C与STIME栏位.功能描述:查看系统中运行的进程.范例 ...

  9. Linux内核入门到放弃-进程管理和调度-《深入Linux内核架构》笔记

    进程优先级 硬实时进程 软实时进程 普通进程 O(1)调度.完全公平调度器 抢占式多任务处理(preemptive multitasking):各个进程都分配到一定的时间段可以执行.时间段到期后,内核 ...

随机推荐

  1. 如何解决读取到文件末尾时碰到EOF导致的重复输出或者无用输出

    当读取到文件末尾时,会碰到EOF,如何解决呢?    方法一:我们可以通过(ch=fin.get())!=EOF来结束读取,这样就不会像eof()那样碰到EOF之后,还会再进行一次读取,导致输出一个无 ...

  2. mysql使用二进制日志恢复数据

    一.恢复到某个二进制文件 1.开启二进制日志 在mysqld的配置节点下添加如下配置 log-bin="E:/Mysql57BinLog/binlog"(windows下的路径,l ...

  3. Node.js 项目搭建

    关于 本书致力于教会你如何用Node.js来开发应用,过程中会传授你所有所需的“高级”JavaScript知识.本书绝不是一本“Hello World”的教程. 状态 你正在阅读的已经是本书的最终版. ...

  4. asp.net中下载文件的问题

    今天解决web的文件下载问题,下载的方法网上很多,不过我的下载有点特殊: 1.下载按钮在gridview中,是模板列的linkButton: 2.使用了ajax控件: 所以,在下载时总是报错,通过查找 ...

  5. shell grep 高亮

    grep "socket" a --color=auto

  6. 【转载】Extjs 中id与itemId的区别

    为了方便表示或是指定一个组件的名称,我们通常会使用id或者itemId进行标识命名.(推荐尽量使用itemId,这样可以减少页面唯一标识而产生的冲突) id:        id是作为整个页面的Com ...

  7. js中常用数组方法concat join push pop slice splice shift

    javascript给我们很多常用的 数组方法,极大方便了我们做程序.下面我们来介绍下常用的集中数组方法. 比如 concat() join() push() pop() unshift() shif ...

  8. Best Practices for Web Apps

    Mobile Web Best Practices Exceptional Performance Let's make the web faster

  9. JQuery表单验证插件EasyValidator,超级简单易用!

    本插件的宗旨是:用户无需写一行JS验证代码,只需在要验证的表单中加入相应的验证属性即可,让验证功能易维护,可扩展,更容易上手. DEMO中已经包含了常用的正则表达式,可以直接复用,为了考虑扩展性,所以 ...

  10. MYSQL注入天书之order by后的injection

    Background-9  order by后的injection 此处应介绍order by后的注入以及limit注入,我们结合less-46更容易讲解,(在less46中详细讲解)所以此处可根据l ...