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. 团队开发——第一篇scrum报告

    一.角色介绍 产品负责人(兼项目经理PM):王雪青 scrum master: 陆宇 开发团队:赵建松.张文冬.徐擎天 二.product backlog 1.买家登录后,显示各个小吃摊的信息,主要是 ...

  2. 软件工程随堂小作业——(C++)

    一.设计思路 本来我的思路是根据上楼的人数和上楼的层数来计算出平均值,但是我发现这个思路不对.于是我选择了最笨的方法,复杂度为O(n2). (1)输入坐电梯的人数和要去的楼层: (2)找到输入楼层里最 ...

  3. 8、android代码优化技术记录

    1.length.length().size的优化 举例: int array_one[] = {1,2,3,4,5,6,7,8,9,10}; int array_two[] = {1,2,3,4,5 ...

  4. 在mac下使用brew和brew cask轻松实现软件安装

    Brew(homebrew) 1.简介 Brew 是 Mac 下面的包管理工具,通过 Github 托管适合 Mac 的编译配置以及 Patch,可以方便的安装开发工具. Mac 自带ruby 所以安 ...

  5. EF 更新条目时出错。有关详细信息,请参见内部异常。

    现象:使用EF新增记录时,一直报上述异常,网上说是值为空.主键外键未设等原因导致,但是改正这些情况下问题依然 解决过程:异常中有一句(请参见内部异常),一直都没有当回事,后来实在没办法就静下心来看了看 ...

  6. C# Redis

    概念 Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,和Memcached类似,它支持存储的value类型相对更多,包括string( ...

  7. bzoj 1189 二分+最大流判定

    首先我们可以二分一个答案时间T,这样就将最优性问题 转化为了判定性问题.下面我们考虑对于已知的T的判定 对于矩阵中所有的空点bfs一次,得出来每个点到门的距离, 然后连接空点和每个能在t时间内到达的门 ...

  8. max_flow(Ford-Fulkerson) 分类: ACM TYPE 2014-09-02 01:50 110人阅读 评论(0) 收藏

    #include <cstdio> #include <iostream> #include <cstring> #include<queue> usi ...

  9. PS4 Razor GPU

    这东西,从出来就感觉没用,各种请教也都没有帮助.虽然搞明白了 rt啊tex啊buffer啊但是就是感觉对于抓bug没有用处.所以从来都是像巫师一样靠直觉,再用科学的方法来测试,其实就是让ps retu ...

  10. [工作积累] NDK通过Java获取package name 和version

    ////////////////////////////////////////////////////////////////////////// //Java code snippet //get ...