zoukankan      html  css  js  c++  java
  • 20190923-10Linux进程线程类 000 018

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

    ps 查看当前系统进程状态

    ps:process status 进程状态

    1.基本语法

    ps aux | grep xxx (功能描述:查看系统中所有进程)

    ps -ef | grep xxx (功能描述可以查看子进程之间的关系)

    2.选项说明

    1-35

    选项

    功能

    -a

    选择所有进程

    -u

    显示所有用户的所有进程

    -x

    显示没有终端的进程

    3.功能说明

    1ps aux显示信息说明

    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:产生此进程的命令名

    2ps -ef显示信息说明

    UID:用户ID

    PID:进程ID

    PPID:父进程ID

    CCPU用于计算执行优先级的因子。数值越大,表明进程是CPU密集型运算,执行优先级会降低;数值越小,表明进程是I/O密集型运算,执行优先级会提高

    STIME:进程启动的时间

    TTY:完整的终端名称

    TIMECPU时间

    CMD:启动进程所用的命令和参数

    4.经验技巧

    如果想查看进程的CPU占用率和内存占用率,可以使用aux;

    如果想查看进程的父进程ID可以使用ef;

    5.案例实操

    [root@hadoop101 datas]# ps aux

    如图1-161所示

     

    1-161 查看进程的CPU占用率和内存占用率

    [root@hadoop101 datas]# ps -ef

     

    如图1-162所示

     

    1-162  查看进程的父进程ID

    kill 终止进程

    1.基本语法

    kill  [选项] 进程号 (功能描述:通过进程号杀死进程)

    killall 进程名称 (功能描述:通过进程名称杀死进程,也支持通配符,这在系统因负载过大而变得很慢时很有用

    2.选项说明

    1-36

    选项

    功能

    -9

    表示强迫进程立即停止

    3.案例实操

    1)杀死浏览器进程

    [root@hadoop101 桌面]# kill -9 5102

    2)通过进程名称杀死进程

    [root@hadoop101 桌面]# killall firefox

    pstree 查看进程树

    1.基本语法

    pstree [选项]

    2.选项说明

    1-37

    选项

    功能

    -p

    显示进程的PID

    -u

    显示进程的所属用户

    3.案例实操

    1)显示进程pid

    [root@hadoop101 datas]# pstree -p

    2)显示进程所属用户

    [root@hadoop101 datas]# pstree -u

    top 查看系统健康状态

    1.基本命令

    top [选项]

    2.选项说明

    1-38

    选项

    功能

    -d 秒数

    指定top命令每隔几秒更新。默认是3秒在top命令的交互模式当中可以执行的命令:

    -i

    使top不显示任何闲置或者僵死进程。

    -p

    通过指定监控进程ID来仅仅监控某个进程的状态。

    3.操作说明

    1-39

    操作

    功能

    P

    CPU使用率排序,默认就是此项

    M

    以内存的使用率排序

    N

    PID排序

    q

    退出top

    4.查询结果字段解释

    第一行信息为任务队列信息

    1-40

    内容

    说明

    12:26:46

    系统当前时间

    up 1 day, 13:32

    系统的运行时间,本机已经运行1

    13小时32分钟

    2 users

    当前登录了两个用户

    load  average:  0.00, 0.00, 0.00

    系统在之前1分钟,5分钟,15分钟的平均负载。一般认为小于1时,负载较小。如果大于1,系统已经超出负荷。

    第二行为进程信息

    1-41

    Tasks:  95 total

    系统中的进程总数

    1 running

    正在运行的进程数

    94 sleeping

    睡眠的进程

    0 stopped

    正在停止的进程

    0 zombie

    僵尸进程。如果不是0,需要手工检查僵尸进程

    第三行为CPU信息

    1-42

    Cpu(s):  0.1%us

    用户模式占用的CPU百分比

    0.1%sy

    系统模式占用的CPU百分比

    0.0%ni

    改变过优先级的用户进程占用的CPU百分比

    99.7%id

    空闲CPUCPU百分比

    0.1%wa

    等待输入/输出的进程的占用CPU百分比

    0.0%hi

    硬中断请求服务占用的CPU百分比

    0.1%si

    软中断请求服务占用的CPU百分比

    0.0%st

    stSteal  time)虚拟时间百分比。就是当有虚拟机时,虚拟CPU等待实际CPU的时间百分比。

    第四行为物理内存信息

    1-43

    Mem:    625344k total

    物理内存的总量,单位KB

    571504k used

    已经使用的物理内存数量

    53840k free

    空闲的物理内存数量,我们使用的是虚拟机,总共只分配了628MB内存,所以只有53MB的空闲内存了

    65800k buffers

    作为缓冲的内存数量

    第五行为交换分区(swap)信息

    1-44

    Swap:   524280k total

    交换分区(虚拟内存)的总大小

    0k used

    已经使用的交互分区的大小

    524280k free

    空闲交换分区的大小

    409280k cached

    作为缓存的交互分区的大小

    5.案例实操

    [root@hadoop101 atguigu]# top -d 1

    [root@hadoop101 atguigu]# top -i

    [root@hadoop101 atguigu]# top -p 2575

    执行上述命令后,可以按PMN对查询出的进程结果进行排序。

    netstat 显示网络统计信息端口占用情况

    1.基本语法

    netstat -anp |grep 进程 (功能描述:查看该进程网络信息

    netstat -nlp | grep 端口号 (功能描述:查看网络端口号占用情况)

    2.选项说明

    1-45

    选项

    功能

    -n

    拒绝显示别名,能显示数字的全部转化成数字

    -l

    仅列出有在listen(监听)的服务状态

    -p

    表示显示哪个进程在调用

    3.案例实操

    1)通过进程号查看该进程的网络信息

    [root@hadoop101 hadoop-2.7.2]# netstat -anp | grep 火狐浏览器进程号

    unix  2      [ ACC ]     STREAM     LISTENING     20670  3115/firefox        /tmp/orbit-root/linc-c2b-0-5734667cbe29

    unix  3      [ ]         STREAM     CONNECTED     20673  3115/firefox        /tmp/orbit-root/linc-c2b-0-5734667cbe29

    unix  3      [ ]         STREAM     CONNECTED     20668  3115/firefox        

    unix  3      [ ]         STREAM     CONNECTED     20666  3115/firefox     

     

    (2)查看某端口号是否被占用

    [root@hadoop101 桌面]# netstat -nlp | grep 20670 

    unix  2      [ ACC ]     STREAM     LISTENING     20670  3115/firefox        /tmp/orbit-root/linc-c2b-0-5734667cbe29

  • 相关阅读:
    rustlang入门教程
    中间件日志切割
    Redis非关系型缓存数据库集群部署、参数、命令工具
    SaltStack自动化软件简介及安装
    CentOS根目录下各目录介绍
    Dockerfile书写介绍及构建ssh镜像、tomcat镜像、nginx镜像
    DockerFile执行报错解决
    阿里云CentOS7.2把默认语言修改成中文
    JavaScript 如何判断一个数据的类型
    MongoDB windows 下安装配置
  • 原文地址:https://www.cnblogs.com/YUJIE666/p/11570201.html
Copyright © 2011-2022 走看看