linux下进程如何查看什么时候停止,哪个用户停止的

linux下进程如何查看什么时候停止,哪个用户停止的,第1张

1 在LINUX命令平台输入1-2个字符后按Tab键会自动补全后面的部分(前提是要有这个东西,例如在装了tomcat的前提下,输入tomcat的to按tab)。

2 ps 命令用于查看当前正在运行的进程

grep 是搜索

例如: ps -ef | grep java

表示查看所有进程里CMD是java的进程信息

ps -aux | grep java

-aux 显示所有状态

ps

3 kill 命令用于终止进程

例如: kill -9 [PID]

-9表示强迫进程立即停止

通常用ps 查看进程PID ,用kill命令终止进程

网上关于这两块的内容

-----------------------------------------------------------------------------------

PS

-----------------------------------------------------------------------------------

1 ps简介

ps命令就是最根本相应情况下也是相当强大地进程查看命令运用该命令可以确定有哪些进程正在运行和运行地状态、进程是否结束、进程有没有僵死、哪些进程占用了过多地资源等等总之大部分信息均为可以通过执行该命令得到地

2 ps命令及其参数

ps命令最经常使用地还是用于监控后台进程地工作情况,因为后台进程是不和屏幕键盘这些标准输入/输出设

备进行通信地,所以如果需要检测其情况,便可以运用ps命令了

该命令语法格式如下:

ps [选项]

-e 显示所有进程,环境变量

-f 全格式

-h 不显示标题

-l 长格式

-w 宽输出

a 显示终端上地所有进程,包括其他用户地进程

r 只显示正在运行地进程

x 显示没有控制终端地进程

O[+|-] k1 [,[+|-] k2 [,…]] 根据SHORT KEYS、k1、k2中快捷键指定地多级排序顺序显示进程列表

对于ps地不同格式都存在着默认地顺序指定这些默认顺序可以被用户地指定所覆盖在这里面“+”字符是可选地,“-”字符是倒转指定键地方向

pids只列出进程标识符,之间运用逗号分隔该进程列表必须在命令行参数地最后一个选项后面紧接着给出,中间不能插入空格比如:ps -f1,4,5

以下介绍长命令行选项,这些选项都运用“--”开头:

--sort X[+|-] key [,[+|-] key [,…]] 从SORT KEYS段中选一个多字母键“+”字符是可选地,因为默认地方向就是按数字升序或者词典顺序比如: ps -jax -sort=uid,-ppid,+pid

--help 显示帮助信息

--version 显示该命令地版本信息

在前面地选项说明中提到了排序键,接下来对排序键作进一步说明需要注意地是排序中运用地值是ps运用地内部值,并非仅用于某些输出格式地伪值排序键列表见表4-3

表4-3 排序键列表

c

cmd

可执行地简单名称

C

cmdline

完整命令行

f

flags

长模式标志

g

pgrp

进程地组ID

G

tpgid

控制tty进程组ID

j

cutime

累计用户时间

J

cstime

累计系统时间

k

utime

用户时间

K

stime

系统时间

m

min_flt

次要页错误地数量

M

maj_flt

重点页错误地数量

n

cmin_flt

累计次要页错误

N

cmaj_flt

累计重点页错误

o

session

对话ID

p

pid

进程ID

P

ppid

父进程ID

r

rss

驻留大小

R

resident

驻留页

s

size

内存大小(千字节)

S

share

共享页地数量

t

tty

tty次要设备号

T

start_time

进程启动地时间

U

uid

UID

u

user

用户名

v

vsize

总地虚拟内存数量(字节)

y

priority

内核调度优先级

3 经常使用ps命令参数

最经常使用地三个参数是u、a、x,下面将通过例子来说明其具体用法

[例20] 以root身份登录系统,查看当前进程状况

$ ps

PID TTY TIME COMMAND

5800 ttyp0 00:00:00 bash

5835 ttyp0 00:00:00 ps

可以看到,显示地项目共分为四项,依次为PID(进程ID)、TTY(终端名称)、TIME(进程执行时间)

、COMMAND(该进程地命令行输入)

可以运用u选项来查看进程所有者及其他少许详细信息,如下所示:

$ ps u

USER PID %CPU %MEM USZ RSS TTY STAT START TIME COMMAND

test 5800 00 04 1892 1040 ttyp0 S Nov27 0:00 -bash

test 5836 00 03 2528 856 ttyp0 R Nov27 0:00 ps u

在bash进程前面有条横线,意味着该进程便是用户地登录shell,所以对于一个登录用户来说带短横线地进程只有一个还可以看到%CPU、%MEM两个选项,前者指该进程占用地CPU时间和总时间地百分比;后者指该进程占用地内存和总内存地百分比

在这种情况下看到了所有控制终端地进程;当然对于其他那些没有控制终端地进程还是没有观察到,所以这时就需要运用x选项运用x选项可以观察到所有地进程情况

1、fork一般用于处理多线程任务。比如在网络中,需要同时发送多种请求报文,则可以fork出子进程来进行发包任务,而父进程则直接去做自己的逻辑任务。

2、所谓运行时间指的是已经运行了多长时间还是从进程创建到进程退出的时间?输入的程序是由程序启动还是已经在运行的

,如果是已经存在的,就试着去获取进程创建时间(WIN32

提供这样的API),然后获取当前时间,就可以得到进程已经运行了多久。如果是程序启动的,那就用类似time这种函数打桩就可以了。

可以使用top命令。

top命令提供了运行中系统的动态实时视图。在终端中输入top:

第一行:

10:01:23

当前系统时间

126

days,

14:29

系统已经运行了126天14小时29分钟(在这期间没有重启过)

2

users

当前有2个用户登录系统

load

average:

115,

142,

144

load

average后面的三个数分别是1分钟、5分钟、15分钟的负载情况。

load

average数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了。 

第二行:

Tasks

任务(进程),系统现在共有183个进程,其中处于运行中的有1个,182个在休眠(sleep),stoped状态的有0个,zombie状态(僵尸)的有0个。 

第三行:cpu状态

67%

us

用户空间占用CPU的百分比。

04%

sy

内核空间占用CPU的百分比。

00%

ni

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

929%

id

空闲CPU百分比

00%

wa

IO等待占用CPU的百分比

00%

hi

硬中断(Hardware

IRQ)占用CPU的百分比

00%

si

软中断(Software

Interrupts)占用CPU的百分比

在这里CPU的使用比率和windows概念不同,如果你不理解用户空间和内核空间,需要充充电了。

第四行:内存状态

8306544k

total

物理内存总量(8GB)

7775876k

used

使用中的内存总量(77GB)

530668k

free

空闲内存总量(530M)

79236k

buffers

缓存的内存量

(79M)

第五行:swap交换分区

2031608k

total

交换区总量(2GB)

2556k

used

使用的交换区总量(25M)

2029052k

free

空闲交换区总量(2GB)

4231276k

cached

缓冲的交换区总量(4GB)

以上就是关于linux下进程如何查看什么时候停止,哪个用户停止的全部的内容,包括:linux下进程如何查看什么时候停止,哪个用户停止的、C语言中怎么用fork()创建子进程运行程序并且计算时间、如何在Linux中查看所有正在运行的进程等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/9813926.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-02
下一篇2023-05-02

发表评论

登录后才能评论

评论列表(0条)

    保存