Linux —— 查看进程命令及进程优先级

【Linux】-进程概念之进程优先级(如何去进行调度以及进程切换),还不进来看看?? 关于tast_struct属性中的优先级,以及cpu是如何根据优先级去调度进程的,以及进程是怎么切换的。 阅读详情

目录

一,查看进程命令

1,ps 命令 

ps axj

ps aux

ps l

ps -l

2,top 命令

3,ptree 命令

4,pgrep 命令

三,进程优先级

PRI

NI


//实时记录指定进程状态
[wz@192 ~]$ while :; do echo "###########"; ps axj | head -1 && ps axj | grep target | grep -v grep; echo "#########"; sleep 1; done

一,查看进程命令

        ps、top、pstree、grep;

1,ps 命令 

        静态查看进程信息,可接受多种选项;

  • UNIX选项,需加破折号(-);
  • BSD选项,不需加破折号(-);
  • GNU长选项,需加两个破折号(-);

选项

  • a,取消BSD风格的“仅你自己”限制,列出所有使用终端tty的进程;与选项x一起将列出所有进程;
  • x,取消BSD风格的“需有tty”限制,列出所有仅自己的进程;
  • j,BSD作业控制格式,增加了如PPID等信息;
  • u,显示面向用户的格式,显示如USER、%CPU、%MEM等信息;
  • l,BSD长格式显示,显示如F、UID、PID、PPID、PRI等;
  • -l,长格式,常与-y一起使用,显示如F、S、UID、PID、PPID、C等;
  • -A、-e,列出所有进程;
  • -a,列出所有进程,除了 session leaders 和关联终端的进程;
  • -d,列出所有进程,除了 session leaders ;
  • p、-p、--pid,选择指定PID的进程;
  • --ppid,选择指定PID的父进程;
  • U、-u、--user,选择用户RUID或名字的进程;
ps axj
[wz@192 ~]$ ps axj | head -1 && ps axj | grep bash
  PPID    PID   PGID    SID TTY       TPGID STAT   UID   TIME COMMAND
     1    786    775    775 ?            -1 S        0   0:00 /bin/bash /usr/sbin/ksmtuned
  2095   2231   2231   2231 ?            -1 Ss    1000   0:00 /usr/bin/ssh-agent /bin/sh -c exec -l /bin/bash -c "env GNOME_SHELL_SESSION_MODE=classic gnome-session --session gnome-classic"
  2848   2856   2856   2856 pts/0      2937 Ss    1000   0:00 bash
  2848   3086   3086   3086 pts/1      4838 Ss    1000   0:00 bash
  3086   4839   4838   3086 pts/1      4838 S+    1000   0:00 grep --color=auto bash
ps aux
[wz@192 ~]$ ps aux | head -1 && ps aux | grep bash
USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root        786  0.0  0.0 115408   952 ?        S    07:27   0:00 /bin/bash /usr/sbin/ksmtuned
wz         2231  0.0  0.0  72472   776 ?        Ss   07:28   0:00 /usr/bin/ssh-agent /bin/sh -c exec -l /bin/bash -c "env GNOME_SHELL_SESSION_MODE=classic gnome-session --session gnome-classic"
wz         2856  0.0  0.1 116860  3300 pts/0    Ss   07:28   0:00 bash
wz         3086  0.0  0.1 116860  3416 pts/1    Ss   07:37   0:00 bash
wz         4849  0.0  0.0 112816  1012 pts/1    S+   08:59   0:00 grep --color=auto bash
  • USER,进程的用户;
  • PID,该进程标识符;
  • %CPU,该进程占用CPU的百分比;
  • %MEM,该进程占用内存的百分比;
  • VSZ,该进程使用虚拟内存量KB;
  • RSS,该进程使用的物理内存量KB;
  • TTY,启动该进程的终端设备,非终端启动显示?;
  • STAT,该进程状态,如R、S、D、T、Z;
  • START,该进程启动时间;
  • TIME,该进程累计cpu时间;
  • COMMAND,该进程启动命令;
ps l
[wz@192 ~]$ ps l 
F   UID    PID   PPID PRI  NI    VSZ   RSS WCHAN  STAT TTY        TIME COMMAND
0  1000   2856   2848  20   0 116860  3300 do_wai Ss   pts/0      0:00 bash
0  1000   2937   2856  20   0 119848  2376 do_wai S+   pts/0      0:00 man ps
0  1000   2950   2937  20   0 110408   928 n_tty_ S+   pts/0      0:00 less -s
0  1000   3086   2848  20   0 116860  3420 do_wai Ss   pts/1      0:00 bash
0  1000   5035   3086  20   0 153324  1532 -      R+   pts/1      0:00 ps l
ps -l
[wz@192 ~]$ ps -l 
F S   UID    PID   PPID  C PRI  NI ADDR SZ WCHAN  TTY          TIME CMD
0 S  1000   3086   2848  0  80   0 - 29215 do_wai pts/1    00:00:00 bash
0 R  1000   5051   3086  0  80   0 - 38331 -      pts/1    00:00:00 ps
  • F,该进程标志,说明进程权限;
    • 1,仅可复制,不可执行;
    • 4,进程权限为root;
  • S,该进程状态,如R、S、D、T、Z;
  • UID,该进程执行者;
  • PID,该进程标识符;
  • PPID,该进程父进程标识符;
  • C,CPU的使用率;
  • PRI,该进程优先级,值越小优先级越高;
  • NI,该进程nice值;
  • ADDR,该进程的内存地址;
  • SZ,该进程交换空间大小;
  • WCHAN,显示休眠进程的系统函数名;
  • TTY,启动该进程的终端设备,非终端启动显示?;
  • TIME,该进程累计cpu时间;
  • CMD,该进程启动命令;

2,top 命令

        动态实时查看进程信息;

按键

  • P,根据CPU使用百分比排序;
  • M,根据物理内存大小排序;
  • N,根据启动时间排序;
  • c,切换显示命令名称和完整命令行;
  • h,获得top进程在线帮助信息;
  • k,根据提示输入进程PID,并按Enter终止对应进程;
  • 1,显示CPU个数和状态;

3,ptree 命令

         以树形结构查看进程数;

  • -a,显示命令行参数;
  • -u,显示用户名;
  • -p,显示PID;
[wz@192 ~]$ pstree 
systemd─┬─ModemManager───2*[{ModemManager}]
        ├─NetworkManager─┬─dhclient
        │                └─2*[{NetworkManager}]
[wz@192 ~]$ pstree -aup
systemd,1 --switched-root --system --deserialize 22
  ├─ModemManager,682
  │   ├─{ModemManager},697
  │   └─{ModemManager},757
  ├─NetworkManager,840 --no-daemon
  │   ├─dhclient,971 -d -q -sf /usr/libexec/nm-dhcp-helper -pf /var/run/dhclient-ens33.pid -lf...
  │   ├─{NetworkManager},846
  │   └─{NetworkManager},849

4,pgrep 命令

        基于名称和其他属性,来查询或显示进程;

  • -l,显示进程名字及PID;
  • -a,显示完整的命令行及PID;
  • -u,匹配用户ID的进程;
  • -n,仅显示最新进程的PID;
  • -o,仅显示最老进程的PID;
  • -t,显示匹配终端的进程PID;
[wz@192 ~]$ pgrep -l bash
2856 bash
3086 bash
[wz@192 ~]$ pgrep -l man
42222 man
[wz@192 ~]$ pgrep -a man
42222 man pgrep
[wz@192 ~]$ pgrep -n bash
3086
[wz@192 ~]$ pgrep -o bash
2856
[wz@192 ~]$ pgrep -u 1000 -l
2090 gnome-keyring-d
2095 gnome-session-b
2104 dbus-launch
2105 dbus-daemon
2140 imsettings-daem
...
[wz@192 ~]$ pgrep -t pts/1,pts/0 -l
44435 bash
44489 bash
44547 man
44562 less

三,进程优先级

        内核使用【0~139】数字来表示140种内部优先级,值越低优先级越高;

  • 【0~99】专供实时进程使用;
  • 【-20~19】Nice值映射到【100~139】;

  • 优先级,即CPU分配资源的先后顺序;决定何时运行及接受CPU多长时间;
  • 优先级高的优先执行,配置进程优先级对多任务环境有用,可改善系统性能;

PRI

  • 表示进程优先级,即程序被CPU执行的先后顺序;
  • 此值越小,级别越高;

NI

  • 表示进程优先级的修正值;
  • 调整进程优先级,在Linux下即调整进程NI值;
  • NI值取值范围为-20~19;
  • PRI(new) = PRI(old) + Nice;

在top中更改进程NI值

  • 进入top(按“r”) ->  输入PID  ->  输入NI值;
  • 假如进程PRI为80,每次调整都是从80开始的;
  • 输入调整的NI值会被钳制在-20~19自己;

相关概率:

  • 竞争性,系统进程众多,CPU资源较少,进程间具有竞争性;优先级用于更合理竞争相关资源,从而有效完成任务;
  • 独立性,多进程运行,需独立享受各种资源,运行期间互不干扰;
  • 并行,多进程在多个CPU下分别同时运行;
  • 并发,多进程在单个CPU下一段时间内切换运行;

注:OS调度器原则是公平且高效;

Linux查看进程的一些方法 ps (英文全拼:process status)命令用于显示当前进程的状态,类似于 windows 的任务管理器。可以搭配kill指令随时中断、删除不必要的程序。ps命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等,总之大部分信息都是可以通过执行该命令得到的。-e:显示系统内的所有进程信息。-l:使用长(long)格式显示进程信息。 阅读详情

相关推荐

【Linux】掌握进程优先级:了解Linux中的nice值及其设置方法

Linux操作系统中,每个进程都与一个与之相关的优先级值,被称为”nice“值。nice值用于表示进程对系统资源的需求程度,决定了进程在CPU调度时的优先级。nice值是一个整数,取值范围从-20 ~ +19。较小的nice值表示进程对CPU资源的需求更高,因此具有更高的优先级。而较大的nice值表示进程对CPU资源的需求较低,因此具有较低的优先级。

weixin_52018852的博客 3904

linux小命令

Ls -a列出系统中的隐含文件,linux下的隐含文件是靠文件名的格式来表示的,不同于dos是靠文件属性来表示,即只要该文件以“.”开头,那么它就是隐含文件。 -l以长式列出。就是把该文件或目录的所有信息都列出来,一个文件占一行 相当于dos下的dir命令,是列文件列表的命令。 cd 和dos下的cd一样,转换目录的命令。 注意:linux下转到上级目录要打"cd .."而不...

weixin_34310369的博客 1301

在Linux中查看进程的优先级

在Linux中,可以通过多种方式查看进程的优先级。进程的优先级有两种类型:一个是“nice值”,它是用户空间的优先级,用于影响进程的调度;另一个是“实时优先级”,用于实时任务。

小灰灰的博客 1539

LINUX查看进程的4种方法(小结)

进程是在 CPU 及内存中运行的程序代码,而每个进程可以创建一个或多个进程(父子进程)。 查看进程方法 第一种: ps aux ps命令用于报告当前系统的进程状态。可以搭配kill指令随时中断、删除不必要的程序。ps命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等,总之大部分信息都是可以通过执行该命令得到的。 a:显示当前终端下的所有进程信息,包括其他用户的进程。 u:使用以用户为主的格式输

ZONGXP的博客 26万+

异步bus交互(一)— 两级DFF同步器

异步bus交互(一)— 两级DFF同步器 跨时钟域处理 & 亚稳态处理 1.问题产生 现在的芯片(比如SOC,片上系统)集成度和复杂度越来越高,通常一颗芯片上会有许多不同的信号工作在不同的时钟频率下。比如SOC芯片中的CPU通常会工作在一个频率上,总线信号(比如DRAM BUS)会工作在另一个时钟频率下,而普通的信号又会工作在另外的时钟频率下。这3个不同时钟频率下工作的信号往往需要相互沟通和传递信号。 不同时钟域下的信号传递就涉及到跨时钟域信号处理,因为相互之间的频率、相位不一样,如果不做处理或者

qq_44816673的博客 5118

LWIP协议栈在STM32H7上的内存优化实战:如何用32KB RAM实现稳定千兆以太网通信

本文深入探讨了在STM32H7微控制器上,如何通过内存优化策略,在仅32KB的D2 SRAM中稳定运行LWIP协议栈以实现千兆以太网通信。文章详细分析了STM32H7的内存架构、LWIP的内存消耗瓶颈,并提供了从描述符表与PBUF池精确分配、链接脚本修改到MPU区域划分的一整套实战优化方案,旨在解决大数据量传输卡死等常见配置问题。

gg901的博客 603

linux下查看系统进程优先级命令,Linux 进程优先级查看及调整

首先用top或者ps -l查看进程会发现有PR(PRI) NI两个字段:NI 是优先值,是用户层面的概念, PR是进程的实际优先级, 是给内核(kernel)看(用)的。一般情况下,PR=NI+20, 如果一个进程的优先级PR是20, 那么它的NI(nice)值就是20-20=0。进程调度优先级是从-20到19,一共40个级别,数字越大,表示进程的优先级越低。默认时候,进程的优先级是0。查看进程优...

weixin_33643727的博客 2441

基于远程服务器 Tip_Adapter源码从零开始复现

从零一步步实现源代码的运行

zcyzcyjava的博客 1602

进程-查看信息,优先级,前后台运行切换等linux命令

(一)查看进程信息 (1)ps(静态快照) ps 查看当前终端上的进程 ps -elf 查看linux下所有的进程详细信息 ps -aux 查看linux下所有进程状态,所占cpu等状态信息 (2)top(动态进程信息) top -p PID 查看单个进程的动态信息 UID PID PPID C STIME TTY TIME CMD root ...

蒲公英的诗与远方 507

vTaskStartScheduler()详解

是启动 FreeRTOS 实时内核的“扳机”。在调用它之前,你只是创建了一些任务结构,但它们都处于“待命”状态,系统仍然在按传统的裸机前后台方式运行。调用这个函数后,FreeRTOS 内核会接管系统的控制权,开始根据优先级调度你创建的任务,多任务环境才真正开始。关键点:它没有参数。它的所有行为都由中的配置宏控制。它通常不会返回。一旦调用,除非没有任务可以运行(或者你显式地停止了调度器),否则程序流永远不会回到main()函数中调用它的下一行。是一个没有参数但行为由精密控制的函数。

Shylock_Mister的博客 1592

Claude Code 100个真实案例 - 用AI设计Arduino PCB电路板(硬件小白也能画板)

本案例展示如何使用 Claude Code 配合 KiCad 的 Python 脚本接口,从零设计一块 Arduino 传感器扩展板 PCB。从原理图符号创建、网表生成到 PCB 布局布线,全程自动化完成,最终输出可直接发给工厂打样的 Gerber 文件。

yueyeguzhuo的专栏 438

【Linux】进程优先级

本篇文章介绍了进程优先级的基本概念及其相关操作。首先阐述了优先级在操作系统中的重要性,用于决定进程的运行顺序。接着,说明了如何查看进程的优先级,包括使用相关命令查看PRI(优先级)和NI(nice值)。其中,详细探讨了PRI与NI的含义、计算方法、取值范围等。进一步地,文章介绍了如何设置进程的优先级,包括使用top命令更改已存在进程的nice值,以及使用nice和renice命令来设置或调整进程的优先级。希望通过本篇大家可以对进程优先级有更深入的了解。

是阿建吖! 2767

三连杆平面机器人的动力学

0.前言 在这个例子中推导并实现三连杆平面机器人的运动方程。特别的,这里使用拉格朗日法推导运动方程。系统模型如下: 其中在枢轴点处Tm为驱动力矩【一般由伺服电机提供】; b*theta_d:为粘性阻尼扭矩 1、系统方程符号推导前--简介 首先明确欧拉-拉格朗日运动方程: 同样也可以根据作用在多体系统上的非保守力和非保守扭矩来定义广义力Qk。 作用在系统上的广义力的公式为: 其中: Qk:是与广义坐标关联的广义力 Nf_nc :是作用的非保守力的数量 Nt_nc:是作用的非保守扭矩的.

weixin_39090239的博客 4930

【Linux系统】进程优先级

本文详细讲解:Linux系统中进程优先级的概念、如何通过 nice 值手动调整进程优先级、nice 值的范围与限制、进程优先级的应用:进程并发和并行

从不依靠,从不寻找,非常沉默,非常骄傲。 你必须非常努力,才能看起来毫不费力。 1844

人工智能_大模型095_Web版003_deepseek R1本地安装_私有化部署_支持RAG_调用HTTPAPI做自己的AI应用_安装RagFlow以及使用_---人工智能工作笔记0240

这里的一定要注意,是资源不够用了,可以点击ragflow-server左边的小绿点,查看 结果。注意去把内存改成10G把至少,我这里改成了10G,因为电脑一共就16G,再试试吧.可以看日志,就显示的是没有连接上mysql,结果我一看,mysql,根本没启动.然后下面选择general就可以了,然后点击确定,然后再去点击。手动去启动,然后再去试试,注意,内存这里给8G太小了还是.调成8G了,然后硬盘大了大了一些换成50G了,然后。点击系统模型设置可以看到,选择聊天模型就可以了,

添柴程序猿的专栏 447

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

linux进程优先级

normal_prio 的值取决于静态优先级和调度策略,可以通过 _setscheduler 函数来设置 normal_prio 的值。MAX_RT_PRIO 的值为100,nice 的范围是 -20 ~ +19,故 static_prio 值的范围是 100 ~ 139。rt_priority 的值也是取决于调度策略的,可以在 _setscheduler 函数中对 rt_priority 值进行设置。prio 的值是调度器最终使用的优先级数值,即调度器选择一个进程时实际选择的值。

wwwlyj123321的博客 1780

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Linux操作系统--进程优先级

所以我们可以通过调节nice值,当nice值为负数的时候,那么该程序的PRI变小,即其优先级会变高,则越快被执行。原因:因为资源是有限的,进程是多个的,注定了进程之间的竞争关系。需要强调一点的是,进程的nice值不是进程的优先级,他们不是一个概念,但是进程nice值会影响到进程的优先级变化。:多个进程在一个CPU下采用进程切换的方式,在一段时间之内,让多个进程都得以推进,称之为并发。进程在从CPU上离开的时候,要将自己的上下文数据保存好,甚至带走。CPU内的寄存器里面保存的是进程相关的数据。

2301_78702440的博客 1185

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

[操作系统] 进程的优先级

Linux 中的进程优先级和 nice 值是系统调度和资源管理的核心组成部分。通过合理设置进程的优先级和 nice 值,可以有效提高系统性能,确保重要任务优先执行,而不重要的任务则被适当延迟。希望通过本文的介绍,您对 Linux 中进程优先级的概念和操作有了更深入的了解。如果有任何问题或建议,欢迎在评论区留言讨论!

kevin_blog 1092

【Linux进程篇5】理解&分析&更改->进程优先级❤️

因为整个操作系统大概一共有140种指针进程,其中[0,99]这前100种指针进程我们大概一辈子也用不到,则就剩下的[100,139]共40个指针进程,正好对应40个优先级。 操作系统运行队列中,有 run 二级指针指向运行队列指针数组running[140],有 wait 二级指针指向运行队列指针数组 waitting[140]。操作系统会根据进程优先级将进程排进操作系统内运行队列或等待队列的各个位置。 比如有一个优先级为60的进程,会将其排入到运行队列数组的下标为100(专门链入优先级为60的进程)的

2302_78684687的博客 1334

linux进程管理介绍——(进程的状态、特征、查看命令top和ps、进程信号、进程的调用、进程的优先级、进程树pstree、程序、线程)(一篇)

进程的查看及结束 1.什么是进程? 正在进行中的程序,进程放在硬盘,进程的运行状态分为running,sleeping,stopped,zombie,D running(R):正在前台运行或正在运行队列中等待 sleeping(S):中断,可以被唤醒(休眠中, 受阻, 在等待某个条件的形成或接受到信号) D:不可被唤醒的运行状态 stopped(T):停止状态,只能用命令唤醒 zombie(Z):...

songyuchaoshi的博客 673

linux-进程管理-进程查看与控制

进程是操作系统中执行中的程序。Linux 将每个运行的程序看作是一个进程,每个进程都有唯一的进程ID (PID)。在 Linux 系统中,进程管理是非常重要的,它能够帮助系统管理员和用户查看、管理、优化系统资源的使用情况。Linux 提供了丰富的命令来查看和控制进程,例如pstophtopkill等等。这些命令允许用户监控和控制系统中运行的进程,以确保系统资源的合理使用,并避免进程阻塞或占用过多资源。在 Linux 系统中,进程管理是非常关键的操作。通过使用pstophtop。

Flying_Fish_roe的博客 898

Linux下,创建休眠进程sleep,将进程移至后台&,查看后台进程命令jobs,使用fg将后台程序移至前台,改变进程优先级nice,renice,使用kill杀死后台进程,存放进程信息的文件

Linux下,创建休眠进程sleep,将进程移至后台&,改变进程优先级nice,renice 一、使用sleep创建一个休眠程序: sleep secs命令可以创建一个进程,这个进程会休眠secs秒,然后结束,休眠的过程啥也不干,输入啥信息也没用: 这个进程休眠了三秒,然后醒了,然后没了,但是它具备进程该有的信息,比如pid,移至后台,接受信号等。 二、注意将休眠进程占领了前台导致键盘输入无效,不想让它打扰别的指令,需要使用后接&命令使其转到后台运行,命令更改为: sleep 1000

ganfanren00001的博客 5001

Linux系统进程查看,常用进程信号使用及进程的动态监控

#####什么是进程### 进程是系统中正在运行的程序 ###查看进程 图形方式查看 gnome-system-monitor 进程查看命令 ps -A ###所有进程 ps -a ###当前环境中运行的进程,不包含环境信息 ps -u ###显示进程用户信息 ps a ###在当前环境中运行的进程 ps x ###列出系统中所有运行包含tty输出程设备 ps f ###显...

weixin_43314056的博客 1231

Linux进阶篇——进程的查看与管理

本文全面探讨了Linux进程管理的核心概念和技术。文章首先介绍了进程的基本概念,包括进程的创建、终止以及进程间通信(IPC)的重要性。随后,详细阐述了Linux系统中用于进程管理的关键命令和工具,如ps、top、kill等,并解释了它们各自的用途和常见用法。此外,文章还深入探讨了进程优先级、调度策略和调度算法,以及它们如何影响系统的性能和响应速度。 在进程间通信方面,文章详细介绍了Linux支持的各种IPC机制,包括管道、信号、消息队列、共享内存和套接字等,并解释了它们各自的优缺点和适用场景。此外,还探讨

博客虽小,世界尽在其中 1435

【linux进程(3)】进程优先级&命令行参数&环境变量

本篇文章详细介绍了什么是进程优先级以及优先级的特征,什么是命令行参数,什么是环境变量和它的使用修改。内附图文,一看就懂。

2301_77900444的博客 1152
上一篇: Linux —— 进程状态
下一篇: Blueprint —— 入门笔记2
挨代码
博客等级 码龄5年 1696粉丝 384原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值