进程介绍

'进程'
进程是正在执行的一个程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源

ps命令基本使用

ps命令用来查看在计算机系统中那些程序正在执行,以及执行的情况。可以用它来找出所有的process id和名称。
ps命令也可以用来列出所有程序占用内存的情况
'ps -(选项)'
'a' 显示一个终端的所有进程,除了会话引线
'u' 显示进程的归属用户以及内存的使用情况
'x' 显示没有控制终端的进程
'-l' 长格式显示,显示更加详细的信息
'-e' 显示所有进程和'-A'作用一致
实例:
'ps aux'
查看系统中所有进程
​
[root@ssgao1987 ssgao]# ps aux
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.1  19364  1604 ?        Ss   Jul08   0:00 /sbin/init
root         2  0.0  0.0      0     0 ?        S    Jul08   0:00 [kthreadd]
​
'USER'该进程由哪个用户产生的
'PID' 进程的ID号
'%CPU' 该进程占用CPU资源的百分比,占用越高,进程越耗费资源
'%MEM'该进程占用物理内存的百分比,占用越高,进程越耗费资源
'VSZ' 该进程占用虚拟机内存的大小,单位KB
'RSS' 该进程占用实际物理内存的大小,单位KB
'TTY' 该进程是哪个终端运行的,tty1-tty7表示代表本地控制台终端,tty1-tty6是本地字符界面终端
tty7是图形终端,pts/0-255代表虚拟终端
'STAT' 进程状态,常见的状态R:运行,S:睡眠,T:停止状态,s:包含子进程,+:位于后台
'START' 进程的启动时间
'TIME' 该进程占用CPU的运算时间,注意不是系统时间
'COMMAND' 产生此进程的命令名

PSTREE基本使用

>>>pstree [选项]
-p: 显示进程的PID
-u:显示进程的所属用户
​
[root@ssgao1987 ssgao]# pstree -pu
init(1)─┬─auditd(1135)───{auditd}(1136)
       ├─console-kit-dae(1387)─┬─{console-kit-da}(1388)
       │                       ├─{console-kit-da}(1389)
       │                       ├─{console-kit-da}(1390)
       │                       ├─{console-kit-da}(1391)
.......

top命令基本使用

top命令可以查看目前程序的执行情景和内存使用。和ps类似,不过它会几秒钟更新一次系统状态方便追踪。
离开按Ctrl+C/或q键
'top [选项]'
'-d' 秒数:指定top命令每隔几秒更新,默认是3秒
'-b' 使用批处理模式输出。一般和-n选项合用
'-n'次数:指定top命令执行的次数
'P'以cpu使用率排序
'M'以内存的使用率排序
'N'以PID排序
'q' 退出top
top -b -n 1 >top.log
将所有进程刷新一次的信息全部写入到top.log文件
[root@ssgao1987 ssgao]# top
​
top - 10:23:12 up 17:16,  1 user,  load average: 0.00, 0.00, 0.00
Tasks:  82 total,   1 running,  81 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   1020052k total,   382400k used,   637652k free,    62460k buffers (加速写入)
Swap:  1048572k total,        0k used,  1048572k free,   204940k cached(加速读取)
------------------
第一行:
top - 10:23:12 up 17:16,  1 user,  load average: 0.00, 0.00, 0.00
1) 系统当前时间
2) 系统的运行时间
3) 当前登录的用户数
4) 系统在1分钟,5分钟,15分钟的平均负载,一般认为小于1时,负载较小,如果大于1,系统已经超出负荷
------------------
第二行:
Tasks:  82 total,   1 running,  81 sleeping,   0 stopped,   0 zombie
1) 系统总进程数
2)正在运行的进程数
3) 睡眠的进程
4) 正在停止的进程
5) 僵尸进程,如果不是0,需要手工检查僵尸进程
------------------
第三行:
Cpu(s):  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
1) 用户模式占用的CPU百分比
2)系统模式占用的CPU百分比
3)改变过优先级的用户进程占用的CPU百分比
4)等待输入/输出的进程占用CPU百分比
5)硬中断请求服务占用的CPU百分比
6)软中断请求服务暂用的CPU百分比
st虚拟时间百分比,就是当虚拟机时,虚拟CPU等待实际CPU的时间百分比
------------------
第四行
Mem:   1020052k total,   382400k used,   637652k free,    62460k buffers (加速写入)
1)物理内存总量
2)已经使用的物理内存数量
3)空闲物理内存数量
4)作为缓冲区的内存数量
------------------
第五行:
Swap:  1048572k total,        0k used,  1048572k free,   204940k cached(加速读取)
1)交换分区
2)已经使用的交互分区的大小
3)空闲交换分区大小
4)作为缓存的交互分区的大小

kill命令

kill 命令用来终止一个正在执行的进程,如一个执行过程失败了,可以把这个程序终止,避免留在内存中占用系统资源。
不过,它的实际意义是送一个信号给这个正在执行的程序,叫它自杀。可以发送很多信号给这写程序,也可以让他们受到信好后做很多事情。
命令格式 kill -(选项) pid
在执行kill命令前。可以先用ps查一下某宕掉程序的pid,然后使用kill除去某个程序。例如终止pid为90的程序:kill 90
-l 列出所有可用的信号名称
-p 印出pid并不发送信号
-signal 其中可用的讯号有HUP(1) ,KILL(9),TERM(15),分别代表着重跑,砍掉,结束
将pid为323的进程砍掉
kill -9 323
将pid为456的进程重跑(restart)
kill -HDP 456
kill -1 2235
重启进程
kill -9 2236
强制杀死进程
kill 2236
不强制杀死,待执行结束后终止进程

java的进程查看

jps命令
查看java进程
列出所有的jvm实例
是jdk1.5提供的一个显示当前所有java进程pid的命令,简单实用,非常适合linux平台简单查看java进程的一些简单情况
'jps -q'
只显示pid,不显示class名称,jar文件名和传递给main方法的参数
'jps -m'
输出传递给main方法的参数,在嵌入式jvm上可能是null
jps [ options ] [ hostid ]
选项
-q 仅输出VM标识符,不包括class name,jar name,arguments in main method
-m 输出main method的参数
-l 输出完全的包名,应用主类名,jar的完全路径名
-v 输出jvm参数
-V 输出通过flag文件传递到JVM中的参数(.hotspotrc文件或-XX:Flags=所指定的文件
-Joption 传递参数到vm,例如:-J-Xms48m

linux系统管理 系统进程的更多相关文章

  1. Linux小白最佳实践:《超容易的Linux系统管理入门书》(连载五)Linux系统的对话方式

    本篇是Linux小白最佳实践第5篇,目的就是让白菜们了解Linux进程之间是如何对话的.之前连载的几篇,在微信上引起了很多的反响,有人也反映图多文字少,感觉没有干货.本篇选了大部分是实战讲解的&quo ...

  2. Linux系统管理和维护常用命令

    Linux系统管理和维护常用命令 ls 命令 功能说明 ls 命令显示指定工作目录下的内容,列出工作目录所包含的文件及子目录. 语法结构: ls [选项] [路径或文件] ls 选项及说明 -a 显示 ...

  3. Linux系统管理常用命令

    Linux系统管理常用命令 分类: Linux2011-01-10 18:26 1538人阅读 评论(0) 收藏 举报 linuxcommandservicenginxuserunix 目录(?)[+ ...

  4. 【Linux】linux系统管理---好用的一些开源工具

    目录 linux系统管理---好用的一些开源工具 htop dstat Glances iftop nethogs iotop linux系统管理---好用的一些开源工具 htop htop是一款运行 ...

  5. Linux系统管理远程登录工具PUTTY

    PuTTY 简介        PuTTY是一个Telnet.SSH.rlogin.纯TCP以及串行接口连线软件.较早的版本仅支持Windows平台,在最近的版本中开始支持各类Unix平台,并打算移植 ...

  6. 【转载】茶叶蛋干货!《超容易的Linux系统管理入门书》(连载十)进行动态主机配置DHCP

    使用动态主机配置协议DHCP(Dynamic Host Configuration Protocol)则可以避免网络参数变化后一些繁琐的配置,客户端可以从DHCP服务端检索相关信息并完成相关网络配置, ...

  7. 【转载】绝对干货!Linux小白最佳实践:《超容易的Linux系统管理入门书》(连载九)如何通过源代码安装软件

    除了使用Linux的包管理机制进行软件的安装.更新和卸载,从源代码进行软件的安装也是非常常见的,开源软件提供了源代码包,开发者可以方便的通过源代码进行安装.从源码安装软件一般经过软件配置.编译软件.执 ...

  8. 【转载】干货再次来袭!Linux小白最佳实践:《超容易的Linux系统管理入门书》(连载八)用命令实现批量添加用户

    Windows添加用户需要至少5个界面,而Linux一条命令就搞定了,这是不是高效人士办公第一法则呢.本文不给你一堆参数和选项,不让你见识教条主义,只给你最实用的代码. 想每天能听到小妞的语音播报,想 ...

  9. 【转载】干货来袭!Linux小白最佳实践:《超容易的Linux系统管理入门书》(连载七)LAMP集成安装

    学Linux做程序开发也好,做系统管理也好,做网络管理员也好,做系统运维也好,不会LAMP和LNMP,那就等于连皮毛都不会!本篇是文字版的LAMP集成安装,下次连载我们要介绍LNMP的文字版安装.有喜 ...

随机推荐

  1. sort-归并排序

    void sort_merge(vector<int> &v,int left,int right) { if(left>=right) return; int mid=(l ...

  2. h5内容超出可以滑动展示的处理,iscroll的使用

    第一步: 引入js 第二步:页面结构 第三步:使用 dome效果:http://cubiq.org/dropbox/iscroll4/examples/simple/ 文档地址:http://iscr ...

  3. RabbitMQ消费方式汇总

    在学习本章节前,请先学习之前的章节:Java访问RabbitMQ:https://www.cnblogs.com/duanjt/p/10057330.htmlRabbitMQ消息发布时的权衡:http ...

  4. Http Requests for PHP

    一.Requests for PHP 官网:http://requests.ryanmccue.info官方介绍:Requests is a humble HTTP request library. ...

  5. 雷林鹏分享:XML 注意事项

    XML 注意事项 这里列出了您在使用 XML 时应该尽量避免使用的技术. Internet Explorer - XML 数据岛 它是什么?XML 数据岛是嵌入到 HTML 页面中的 XML 数据. ...

  6. English trip V1 - 23. Big and Bigger Teacher:Corrine Key: adjective comparisons 形容词 比较级

    In this lesson you will learn to make comparisons. 课上内容(Lesson) compare   n. 比较  vt. 比拟,喻为:[语]构成  vi ...

  7. liunx系统部署

    Linux系统安装与基本配置 =======================================内容提要:获取Linux 常用发行版的方式DELL/HP/IBM 服务器介绍DELL/HP/ ...

  8. 20181013xlVba导入成绩

    Sub 导入成绩() Const TargetSheet = "年级_原始成绩汇总" Const DesSheet = "年级_本次成绩总表" Applicat ...

  9. Stark组件 (一)

    Stark组件构建 1.启动所有app下的stark.py文件,的配置实现步骤 1.创建一个Django项目crm,并创建  app1 ,app2, stark 三个app 2.在crm 项目的set ...

  10. 1.1 从UNIX到Linux的发展历程

    MIT的CTSS:第一个分时操作系统 ◼ Multics系统(Multiplexed Information and Computing System) ⚫ 1965年AT&T,MIT和GE的 ...