`
zhangchibang
  • 浏览: 344942 次
社区版块
存档分类
最新评论

linux下查看进程/线程

阅读更多

ps ax 命令显示一个当前系统进程的列表,该列表中包括其他用户拥有的进程。要显示进程以及它们的所有者,使用 ps aux 命令。该列表是一个静态列表;换一句话说,它是在你启用这项命令时正在运行的进程的快照。如果你需要一个时刻更新的运行进程列表,使用下面描述的 top 命令。

ps 的输出会很长。要防止它快速从屏幕中滑过,你可以把它管道输出给 less 命令:

ps aux | less

你可以使用 ps 命令和 grep 命令的组合来查看某进程是否在运行。譬如,要判定 Emacs 是否在运行,使用下面这个命令:

ps ax | grep emacs

top 命令显示了当前正运行的进程以及关于它们的重要信息,包括它们的内存和 CPU 用量。该列表既是真实时间的也是互动的。以下提供了一个 top 的输出示例:

 19:11:04  up  7:25,  9 users,  load average: 0.00, 0.05, 0.12
89 processes: 88 sleeping, 1 running, 0 zombie, 0 stopped
CPU states:  cpu    user    nice  system    irq  softirq  iowait    idle
           total    6.6%    0.0%    0.0%   0.0%     0.0%    0.0%  192.8%
           cpu00    6.7%    0.0%    0.1%   0.1%     0.0%    0.0%   92.8%
           cpu01    0.0%    0.0%    0.0%   0.0%     0.0%    0.0%  100.0%
Mem:  1028556k av,  241972k used,  786584k free,       0k shrd,   37712k buff
       162316k active,              18076k inactive
Swap: 1020116k av,       0k used, 1020116k free                   99340k cached
                                                                                
  PID USER     PRI  NI  SIZE  RSS SHARE STAT %CPU %MEM   TIME CPU COMMAND
 1899 root      15   0 17728  12M  4172 S     6.5  1.2 111:20   0 X
 6380 root      15   0  1144 1144   884 R     0.3  0.1   0:00   0 top
    1 root      15   0   488  488   432 S     0.0  0.0   0:05   1 init
    2 root      RT   0     0    0     0 SW    0.0  0.0   0:00   0 migration/0
    3 root      RT   0     0    0     0 SW    0.0  0.0   0:00   1 migration/1
    4 root      15   0     0    0     0 SW    0.0  0.0   0:00   0 keventd
    5 root      34  19     0    0     0 SWN   0.0  0.0   0:00   0 ksoftirqd/0
    6 root      34  19     0    0     0 SWN   0.0  0.0   0:00   1 ksoftirqd/1
    9 root      25   0     0    0     0 SW    0.0  0.0   0:00   0 bdflush
    7 root      15   0     0    0     0 SW    0.0  0.0   0:00   1 kswapd
    8 root      15   0     0    0     0 SW    0.0  0.0   0:00   1 kscand
   10 root      15   0     0    0     0 SW    0.0  0.0   0:01   1 kupdated
   11 root      25   0     0    0     0 SW    0.0  0.0   0:00   0 mdrecoveryd

要退出 top ,按 [q] 键。

可以和 top 一起使用的互动命令包括:

窍门
窍门
 

类似于 MozillaNautilus 的应用程序具备线程感知(thread-aware) — 多个线程会被创建来处理多个用户或多个请求,而且每个线程都有自己的 PID。按照默认设置,ps top 只显示主(初始)线程。要查看所有线程,使用 ps -m 命令或在 top 中键入[Shift] -[H] 组合键。

如果和 top 相比,你更喜欢使用图形化界面,你可以使用 GNOME 系统监视器 。要从桌面上启动它,选择面板上的「主菜单」 => 「系统工具」 => 「系统监视器」 或在 X 窗口系统的 shell 提示下键入 gnome-system-monitor 。然后选择「进程列表」 标签。

GNOME 系统监视器 允许你在正运行的进程列表中搜索进程,还可以查看所有进程、你拥有的进程、或活跃的进程。

要了解更多关于某进程的情况,选择该进程,然后点击「更多信息」 按钮。关于该进程的细节就会显示在窗口的底部。

要停止某进程,选择该进程,然后点击「结束进程」 。这有助于结束对用户输入已不再做出反应的进程。

要按指定列的信息来排序,点击该列的名称。信息被排序的那一列会用深灰色显示。

按照默认设置,GNOME 系统监控器 不显示线程。要改变这个首选项,选择「编辑」 => 「首选项」 ,点击「进程列表」 标签,然后选择「显示线程」 。首选项还允许你配置更新间隔;每个进程默认显示的信息;以及系统监视器图表的颜色。

评论

相关推荐

    嵌入式Linux中的进程/线程间通信机制研究

    在嵌入式Linux系统中,进程和线程之间的通信是实现多任务并行处理和协作的关键。本主题将深入探讨几种常见的通信机制:有名管道(named pipe)、共享内存、消息队列以及信号。 首先,有名管道是一种半双工的通信...

    Linux下的多进程/线程网络通信

    本作业要求在Linux下使用C语言实现一个抓取并分析网络数据的软件系统。该系统采用客户端和服务器端开发模式。在客户端,设计两个进程P1和P2同时读取网卡上的数据,P1读取数据后,负责将TCP报文中的头部数据写入到...

    安卓 进程/线程绑定cpu

    本项目通过一个Gradle项目展示了如何实现这一功能,并提供了`adb shell ps -t -p -c`命令来查看系统中线程和进程的CPU绑定情况。 首先,我们需要理解安卓系统中的进程和线程概念。在安卓系统中,每个应用都是一个...

    操作系统实验报告——线程与进程同步

    操作系统实验报告——线程与进程同步,主要探讨了在Linux环境下如何实现进程和线程的同步,以解决经典的生产者-消费者问题。该实验旨在帮助学生掌握操作系统提供的同步机制,并深化对经典同步问题的理解。 实验内容...

    linux 进程和线程

    linux下的进程、线程

    unix/linux下多线程/信号管理框架

    4. **框架设计**:一个良好的多线程/信号管理框架应具有以下特点: - **易用性**:用户只需关注其业务逻辑,无需关心底层的线程创建和信号处理细节。 - **健壮性**:框架应能妥善处理线程异常和信号,避免程序崩溃...

    linux unix下多线程与进程

    总之,Linux和Unix下的进程和线程是系统级编程的重要概念。理解它们的工作原理,熟练运用多线程技术,对于编写高效、可靠的软件至关重要。在实际开发中,应根据需求合理选择进程或线程,充分利用系统资源,提高程序...

    在Windows下创建进程和线程的API

    Windows 下创建进程和线程的 API 在 Windows 操作系统中,创建进程和线程是非常重要的一步骤,对于开发者来说,掌握这方面的知识点是非常必要的。下面我们将详细介绍 Windows 下创建进程和线程的 API。 一、实验...

    linux网络通讯/进程线程/文件操作经典代码-华清培训资料

    总之,"linux网络通讯/进程线程/文件操作经典代码"资料涵盖了Linux系统编程的核心知识,对于任何希望在嵌入式Linux应用开发中提升技能的开发者来说都是一份宝贵的资源。通过学习和实践这些代码,你可以更好地理解...

    linux 多进程多线程编程

    Linux 多进程多线程编程是指在 Linux 操作系统下使用 C 语言进行多进程和多线程编程的技术。该技术可以大幅度提高程序的执行效率和响应速度,提高系统的并发能力和资源利用率。 1. 创建缺省线程 在 Linux 系统下,...

    操作系统课程设计-linux进程与线程的通讯

    在操作系统课程设计中,Linux进程与线程的通信是一个核心且复杂的主题。在这个项目中,学生将深入理解操作系统内核如何管理和协调不同进程和线程之间的数据交换,从而实现高效的任务执行。以下是对这个主题的详细...

    \嵌入式linux开发教程之进程与线程--千锋培训

    嵌入式Linux开发教程深入探讨了进程与线程的概念及其在操作系统中的实现,这对于理解和开发高效、并发的嵌入式应用程序至关重要。以下是这些知识点的详细解释: **一、基础知识:线程和进程** 1. **进程**:是操作...

    Linux进程、线程和调度(1)

    接下来,我们将详细探讨与Linux进程、线程和调度相关的知识点。 首先,Linux进程是系统分配资源的基本单位,具有独立的地址空间。进程生命周期包括就绪(ready)、运行(running)、睡眠(sleep)、停止(stopped)...

    linux下多进程多线程写文件

    代码目的是比较write和printf多路写性能。首先fork生成子进程,并且在子进程中重定向标准输出;然后在父子进程中各创建10个线程分别利用printf和write进行写操作;最后通过返回值比较两者性能。

    linux的进程与线程

    详细介绍了linux下的程序、进程、线程的区别与共同点,是学习linux不可多得的好帮手

    进程和线程的创建 _实验报告.doc

    1.在linux下编写一个应用程序,命名为an_ch2_1b。这个程序不断地输出如下行: Those output come from child,[系统时间] 另外写一个应用程序,命名为an_ch2_1a。这个程序创建一个子进程,执行an_ch2_1b。这个程序...

    LINUX系统下多线程与多进程性能分析.pdf

    LINUX系统下多线程与多进程性能分析 本文主要讨论了Linux操作系统下多线程和多进程的性能分析。在Linux系统中,使用多进程处理多个任务,会占用很多系统资源(主要是CPU和内存的使用)。因此,Linux系统对这种弊端...

    Linux下进程及多线程编程

    Linux 下进程及多线程编程 在 Linux 操作系统中,进程和线程是两种基本的并发编程模型。进程是一种独立的执行单元,拥有独立的虚拟地址空间和系统资源,而线程是一种轻量级的进程,可以共享进程的虚拟地址空间和...

    Linux进程并发程序设计

    Linux 进程并发程序设计是指在 Linux 环境下编写并发程序的设计和实现,涵盖进程创建、进程通信、管道应用等方面。同时,掌握 Linux 环境下的进程并发程序设计也能够帮助开发者更好地理解 Linux 操作系统的工作机制...

Global site tag (gtag.js) - Google Analytics