4.Linux的进程

4.1 Linux的进程

  4.1.1 进程的概述java

    • 有关进程的一些基本概念:

      1.什么是进程:vim

        • 当程序被触发后,执行者的权限与属性、程序的程序代码与所需的数据都会被加载到内存中,操做系统并给予这个内存内的单元一个标识符(PID),简单的说进程就是一个正在运行的程序
        • 进程是程序的具体可实现,它是执行程序的具体过程

      2.如何产生一个进程:bash

        • 在Linux中执行一个程序或者命令就能够触发一个事件而取得一个PID(process ID 一个进程的ID),此时就启动了一个进程
        • init是Linux系统的第一个进程
        • 程序被加载为进程示意图:

          

  4.1.2 查看进程

    • 静态地查看进程:

      1.静态查看进程的命令其对应的选项:服务器

        语法格式: ps [选项] [参数]ps -- process statu网络

        经常使用选项有:spa

        

        经常使用的组合选项:操作系统

        

      2.示例.net

        查看系统全部程序数据rest

        

        以树状的形式显示当前系统的全部进程code

        

      3.进程显示中各项名词的含义

        如下红色框中名词的解释

        

        

      4.进程有哪些状态

        如下是进程的状态字符及其含义:

        

        什么是僵尸进程:

        • 僵尸进程是指该进车行已经执行完毕,或者是因故障应该要终止,但该进程的父进程没法完整、有效的将进程结束掉而形成进程一致存在内存中
        • 若是某个进程的CMD后面还接上<defunct>,就表示该进程是僵尸进程

      5.把进程以更好的形式展现
        语法格式: pstree [选项] [参数] 

        经常使用选项:

        

        示例:

        

    • 动态观察进程的变化:

      1.动态的观察进程的变化的命令及其选项

        语法格式: top [选项] [参数] 

        经常使用选项:

        

        示例:

        

        在top执行过程当中可使用的按键指令:

        

        • 在默认的状况下top默认的排序方式是按照CPU的使用率进行的,若是多个进程的CUP使用率一致,则优先按照内存的使用量来排序

      2.使用top时,前面5行内容及其各个白色块中选项的含义

        

        • 第一行显示的信息:当前的时间,开机到目前为止所通过的时间,已经登陆系统的用户人数,系统再1,5,15分钟的平均工做负载
        • 第二行显示的信息是:目前进程的总量,个别进程处于什么状态(running,sleeping,stopped,zombie)
        • 第三行显示的信息是:CPU的总体负载
        • 第四行和第五行表示目前的物理内存与虚拟内存的使用状况
        • 白色块中选项的含义:

         

      3.将top信息按2次批次输出到文件中

        示例代码:  

       [root@localhost]#top -b -n 2 > /home/temp/top.txt
        #成功以后,进入/home/temp目录查看top.txt文件
       [root@localhost]#cat top.txt 

  4.1.3 进程的管理

    • 进程管理的基本概念

      1.Linux如何对进程进行进程的管理

        • Linux系统使用kill命令来对进程进行管理
        • kill并不仅是杀死进程,它是一个信号指示
    • 进程管理的操做

      1.进程管理的命令及其选项

        语法格式: kill [选项] [参数] 

        经常使用选项:

        

      2.单个进程的管理

        语法格式: kill [信号标识] PID 

      3.多个进程的管理

        语法格式: killall [信号标识] 命令名 

        表示终止以某一个命令名称启动的所有进程

      4.示例

        显示全部kill可用的信号

        

        从新加载并启动某个进程

        从新加载后,再次查看发现重启后的进程PID发生了改变

        

        终止httpd进程

        

  4.1.4 系统资源监控

    • 系统资源监控经常使用的命令

      1.Linux系统资源监控经常使用的命令

        系统资源监控经常使用命令的做用

        

    • 查看系统内存使用状况的操做

      1.查看系统内存使用状况的命令及其选项

        语法格式: free [选项] [-t] 

        经常使用选项:

        

      2.示例

        显示当前系统的内存容量

        

        free命令显示的选项解析(红色框部分)

        

    • 查看系统与其核心相关信息的操做

      1.相关命令及其选项

        语法格式: uname [选项] 

        经常使用选项:

        

        示例

        

    • 网络监控:

      1.网络监控的命令及其选项

        语法格式: natstat [选项] 

        经常使用选项:

        

      2.netstat命令选项显示详解

        示例:

        

        红色框中命令选项详解:

        

    • 系统防火墙

      1.防火墙的临时操做:

        放火墙临时启动、状态查看和关闭的语法格式:     

        #启动防火墙
        service iptables start
        #查看防火墙状态
        service iptables status
        #关闭防火墙
        service iptables stop
        #重启防火墙
        service iptables restart

 

        示例:

        

      2.防火墙的永久操做

        防火墙的永久开启和关闭的语法格式:

         开启:chkconfig iptables on 关闭:chkconfig iptables off

        注意:防火墙的永久操做须要重启服务器才能生效

  4.1.5 Linux系统的任务管理

    • Linux的前台任务和后台任务

      1.前台任务的基本概念

        • 能够控制与执行命令的bash环境
        • 前台任务是指与正在与用户进行交互的的程序

      2.后台任务的基本概念

        • 操做系统自动运行,不须要用户操做的程序
        • 在Linux系统中能够经过Ctrl+z将前台正在执行的任务放到后台暂停运行,从而实现多任务操做
        • 能够经过jobs命令来查看后台执行的任务

      3.如何改善Ctlr+z,程序在后台暂停运行的弊端

        • 能够在命令的末尾加上一个"空格"和"&",实现任务在后台自动运行,并会显示一个PID,便于操做该任务,当任务完成时,会显示一个"Done"来告诉用户已经完成后台任务
        • 注意:"&"可让任务在后台运行,可是不能让交互式程序在后台运行

         

      4.Cltr+z和&的区别

        • Ctrl+z将前台的程序防止后台---状态为暂停
        • 在执行命令后面追加 "&"---状态为后台运行

          

    • 查看后台任务

      1.查看后台任务的命令及其选项

        语法格式: jobs [选项] 

        经常使用选项:

        

      2.查看后台任务时,一些符号的含义

        显示的符号

        

    • 将后台程序拿到前台执行

      1.将后台程序调到前台的命令及其选项

        语法格式: fg %jobnumber 

        语法中的%无关紧要,没有的时候fg直接跟上任务号

        

      2.注意点

        • jobs查看后台任务时,会出现如下符号

          

        • "+"表明当前的,若是命令fg后面没有跟任务号,默认将带"+"的进程调到前台执行
        • "-"表明仅次于"+"的任务,当"+"号对应的进程被调到前台后,"-"对应的进程当即变为"+" 
    • 修改后台程序状态和终止jobs任务

      1.修改后台程序状态的语法

        语法格式: bg jobnumber 

        此语法表示让后台对应任务号的程序变成运行状态

        若是不加任务号,系统会默认将带"+"的程序变成运行状态

      2.注意点

        交互式的任务,在后台没法改变它的装态,可是可以改变fg调用它的顺序

        示例:

        

        • bg2理论上来讲,已经将任务号为[2]的任务变成运行状态,可是执行发现,任务号为[2]的任务仍然是stop状态,由于vim是交互式任务,因此没法在后台改变它为运行状态,可是此时若是执行fg的或会优先将任务号为[2]的任务调到前台执行

      3.终止jobs任务

        终止jobs任务就是利用kill命令完成,具体参见4.1.3的进程管理操做部分

相关文章
相关标签/搜索