当前位置: 首页 > news >正文

Linux---ps命令

​​​​​​Linux ps 命令 | 菜鸟教程 (runoob.com)

process status

用于显示进程的状态

  • USER: 用户名,运行此进程的用户名。
  • PID: 进程ID(Process ID),每个进程的唯一标识号
  • %CPU: 进程当前使用的CPU百分比
  • %MEM: 进程当前使用的内存百分比
  • VSZ: 虚拟内存大小(Virtual Memory Size),进程占用的虚拟内存总量,单位为KB。
  • RSS: 常驻内存集大小(Resident Set Size),进程占用的物理内存总量,单位为KB。
  • TTY:  进程的控制终端(Teletypewriter),如果与终端相关联,则显示终端的设备名,否则显示?
  • STAT:进程状态(Process Status)
  • START: 进程启动时间
  • TIME: CPU时间,进程使用的总CPU时间
  • 命令名/命令行,启动进程的命令

-------

Linux和类Unix操作系统中,进程状态(Process Status)指的是一个进程在任意给定时间点的运行情况。进程可以处于多种状态之一,这些状态指示了进程正在执行的操作或者它为什么没有被运行。以下是常见的进程状态:

  1. R (Running): 进程正在运行或者正在等待运行。在多任务操作系统中,处于R状态的进程可能实际上正在使用CPU或者等待被调度

  2. S (Sleeping): 进程正在睡眠,等待某个事件的发生(比如I/O请求完成或者定时器到期)。尽管这个进程没有在运行,但它仍然是活跃的。

  3. D (Uninterruptible Sleep): 进程处于不可中断睡眠状态,通常是在等待磁盘I/O,这种状态下的进程不会响应任何信号,只能通过重启来恢复。

  4. T (Stopped): 进程被信号停止,比如通过发送SIGSTOP信号。进程可以在之后通过SIGCONT信号恢复运行。

  5. Z (Zombie): 进程已经结束,但是其父进程尚未通过wait()系统调用读取其退出状态。僵尸进程不占用任何资源,除了在进程表中保留一个条目。

  6. X (Dead): 这个状态通常不会显示在ps命令的输出中,它表示进程已经结束并且其父进程已经获取了其退出状态。

  7. < (High Priority): 进程运行在高于普通优先级的优先级上。

  8. N (Low Priority): 进程运行在低于普通优先级的优先级上。

  9. s (Session Leader): 进程是会话领导者

  10. l (Multi-threaded): 进程是多线程的。

  11. + (Foreground Process Group): 进程是前台进程组的一部分。

-------

什么是会话领导者

在Unix和Linux操作系统中,会话领导者(Session Leader)是指创建了一个会话(session)的进程。会话是一个或多个进程组的集合,它们是通过进程控制手段(如作业控制)相关联的。会话领导者负责一些特定的任务,比如:

  1. 会话的控制:会话领导者负责管理会话中的进程组,包括前台和后台进程组

  2. 终端的访问:会话领导者通常是与一个终端设备相关联的,它负责处理来自该终端的输入和向终端输出。

  3. 信号的接收:会话领导者接收来自终端的信号,比如当用户按下中断键(通常是Ctrl+C)时,会话领导者会接收到SIGINT信号,并决定如何处理这个信号。

以下是一些关于会话领导者的关键点:

  • 会话ID(SID):每个会话都有一个唯一的会话ID(SID),会话领导者的进程组ID(PGID)通常与其SID相同。

  • 创建会话:一个进程可以通过调用setsid()系统调用来创建一个新的会话。调用setsid()的进程将成为新会话的会话领导者

  • 孤儿进程组:如果会话领导者终止,其子进程组可能会变成孤儿进程组。在这种情况下,通常会有一个挂起的作业成为新的会话领导者。

  • 前台和后台进程组:在会话中,只有一个进程组可以作为前台进程组接收来自终端的输入。其他进程组则是后台进程组

会话领导者对于作业控制和终端行为的管理非常重要。例如,在shell中,当你启动一个命令时,shell通常会作为会话领导者,并且可以将会话中的进程置于前台或后台,以及控制它们如何响应终端事件。

------- 

  • TTY:进程的控制终端是 tty2,这表明它是在第二个虚拟控制台终端上运行的。

------

虚拟控制台

 虚拟控制台(Virtual Console)是在Linux和类Unix操作系统中提供的一种功能,允许用户在同一物理控制台上访问多个独立的登录会话。每个虚拟控制台都运行着自己的终端会话,用户可以在它们之间切换,而无需重启计算机或使用额外的物理显示器。

以下是一些关于虚拟控制台的基本信息:

如何访问虚拟控制台

在大多数Linux发行版中,可以通过以下快捷键来切换到不同的虚拟控制台:

  • Ctrl + Alt + F1:切换到第一个虚拟控制台
  • Ctrl + Alt + F2:切换到第二个虚拟控制台
  • Ctrl + Alt + F3:切换到第三个虚拟控制台
  • Ctrl + Alt + F6:通常用于第六个虚拟控制台
  • Ctrl + Alt + F7:通常切换回图形界面(如果系统支持)

注意,虚拟控制台的数量和分配可能会根据不同的Linux发行版和系统配置有所不同。

虚拟控制台的特点

  • 独立性:每个虚拟控制台都是独立的,可以运行不同的应用程序,而不会影响到其他虚拟控制台。
  • 文本模式:虚拟控制台通常是文本模式的,这意味着它们不支持图形界面。
  • 系统管理:虚拟控制台常用于系统管理任务,例如,在图形界面出现问题时,可以切换到虚拟控制台进行故障排查。
  • 多用户:多个用户可以同时登录到不同的虚拟控制台,每个用户都有自己的会话。

与伪终端(PTY)的区别

虚拟控制台与伪终端(PTY)是不同的概念。伪终端是软件模拟的终端,通常用于远程登录会话(如SSH)或运行图形界面下的终端模拟器。伪终端的名称通常以pts/开头,例如pts/0

示例

假设您的Linux系统默认配置了6个虚拟控制台,那么:

  • Ctrl + Alt + F1 可能会带您到第一个虚拟控制台,您可以在这里登录。
  • Ctrl + Alt + F2 会带您到第二个虚拟控制台,这里也可以有一个独立的登录会话。
  • Ctrl + Alt + F7 通常用于切换回图形界面。

相关文章:

Linux---ps命令

​​​​​​Linux ps 命令 | 菜鸟教程 (runoob.com) process status 用于显示进程的状态 USER: 用户名&#xff0c;运行此进程的用户名。PID: 进程ID&#xff08;Process ID&#xff09;&#xff0c;每个进程的唯一标识号%CPU: 进程当前使用的CPU百分比%MEM: 进程当前使用的…...

解决k8s拉取私有镜像401 Unauthorized 问题

拉取镜像时未指定账户和密码通常是因为需要访问的镜像仓库启用了认证&#xff0c;但 Kubernetes 默认配置中未提供访问凭据。要解决此问题&#xff0c;可以按照以下步骤配置镜像仓库的认证信息&#xff1a; 1. 创建 Kubernetes Secret 为镜像仓库配置访问凭据&#xff0c;使用…...

Ruby 模块(Module)

Ruby 模块&#xff08;Module&#xff09; 概述 Ruby 是一种动态、开放源代码的编程语言&#xff0c;以其简洁明了的语法和强大的功能而闻名。在 Ruby 中&#xff0c;模块&#xff08;Module&#xff09;是一个重要的概念&#xff0c;它用于封装一组相关的方法和常量。模块提…...

HAL库的简单介绍以及环境搭建

目录 引言 一、HAL库的基本介绍 二、HAL库开发环境搭建 1、安装JAVA运行环境 2、安装STM32CubeMX 3、在线下载芯片支持包 引言 前面&#xff0c;我们学习了STM32基于寄存器的开发方式&#xff0c;能够更接近底层&#xff0c;但是随着我们学习的越来越深、代码越来与复杂…...

如何在 PyCharm 中配置 HTTP 代理以确保网络连接的顺畅性

如何在 PyCharm 中配置 HTTP 代理以确保网络连接的顺畅性 在配置 PyCharm 的 HTTP 代理以确保网络连接的顺畅性时&#xff0c;需按照一定的步骤进行设置&#xff0c;这不仅有助于确保 PyCharm 能够顺利访问互联网资源&#xff0c;还能保证插件和工具的正常更新与同步。以下是详…...

PHP 8.4 重磅发布了

文章精选推荐 1 JetBrains Ai assistant 编程工具让你的工作效率翻倍 2 Extra Icons&#xff1a;JetBrains IDE的图标增强神器 3 IDEA插件推荐-SequenceDiagram&#xff0c;自动生成时序图 4 BashSupport Pro 这个ides插件主要是用来干嘛的 &#xff1f; 5 IDEA必装的插件&…...

LVM缩容

当前环境 rootjmk:~/shell# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS nvme0n1 259:0 0 953.9G 0 disk |-nvme0n1p1 259:1 0 512M 0 part /boot/efi |-nvme0n1p2 259:2 0 488M 0 part /boot -nvme0n1p3 …...

Next.js 独立开发教程(三):CSS 样式的完整指南

系列文章目录 Next.js 开发教程(一)&#xff1a;入门指南-CSDN博客 Next.js 开发教程&#xff08;二&#xff09;&#xff1a;从零构建仪表盘应用-CSDN博客 有兴趣的可以蹲个后续&#xff0c;我会陆续发布一系列的文章。 目录 系列文章目录 1. 样式在 Next.js 中的基本支持…...

React (三)

文章目录 项目地址十二、性能优化12.1 使用useMemo避免不必要的计算12.2 使用memo缓存组件,防止过度渲染12.3 useCallBack缓存函数12.4 useCallBack里访问之前的状态(没懂)十三、Styled-Components13.1 安装13.2给普通html元素添加样式13.3 继承和覆盖样式13.4 给react组件添…...

Python数据结构之链表

一、链表 1、目的 解决顺序表存储数据有上限&#xff0c;并且插入和删除操作效率低的问题。 2、概念 链表&#xff1a;链式存储的线性表&#xff0c;使用随机的物理内存存储逻辑上连续的数据。 链表的组成&#xff1a;由一个个结点组成 结点&#xff1a;由数据域和链接域组…...

“LLM是否是泡沫”

目录 “LLM是否是泡沫” 培养自己鉴别论文价值的能力、复现开源项目的能力、debug 代码的能力 llm 是生产力工具 多去找实习&#xff0c;读再多的论文&#xff0c;刷再多的技术文章&#xff0c;也不如一次 debug 多机通讯报错带来的认知深刻 一、LLM领域的发展与挑战 二、…...

基于机器学习的人脸识别算法matlab仿真,对比GRNN,PNN,DNN以及BP四种网络

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 (完整程序运行后无水印) 2.算法运行软件版本 MATLAB2022A 3.部分核心程序 &#xff08;完整版代码包含详细中文注释和操作步骤视频&#xff09…...

算法(Algorithm)

算法&#xff08;Algorithm&#xff09; 是指解决问题或完成特定任务的一系列明确指令的集合。它是按照一定规则定义的一种计算过程&#xff0c;用于将输入转化为输出&#xff0c;能够被计算机或人类有效执行。 算法的核心特点 有穷性 算法必须在有限步骤内完成&#xff0c;不能…...

C语言中const char *字符进行切割实现

将127.0.0.1以“”“.”来进行切割&#xff0c;实现如下&#xff1a; const char * ip "127.0.0.1";char *test new char[100];strcpy(test, ip);const char *split ".";char *final;final strtok(test, split);while (final){printf("%s\n"…...

【UE5】在材质中计算模型在屏幕上的比例

ViewProperty节点有很多有意思的变量 例如用 ViewProperty 的 tan ⁡ ( FOV / 2 ) \tan(\text{FOV} / 2) tan(FOV/2) 输出&#xff0c;用它计算模型占屏幕的比例。 &#xff08;常用于for运算的次数优化&#xff0c;也可以用于各种美术效果&#xff09; ScaleOnScreen Obje…...

前端速通(HTML)

1. HTML HTML基础&#xff1a; 什么是HTML&#xff1f; 超文本&#xff1a; "超文本"是指通过链接连接不同网页或资源的能力。HTML支持通过<a>标签创建超链接&#xff0c;方便用户从一个页面跳转到另一个页面。 标记语言&#xff1a; HTML使用一组预定义的标签…...

订单日记为“惠采科技”提供全方位的进销存管理支持

感谢温州惠采科技有限责任公司选择使用订单日记&#xff01; 温州惠采科技有限责任公司&#xff0c;成立于2024年&#xff0c;位于浙江省温州市&#xff0c;是一家以从事销售电气辅材为主的企业。 在业务不断壮大的过程中&#xff0c;想使用一种既能提升运营效率又能节省成本…...

Linux:文件管理(一)

目录 一、文件基础认识 二、C语言操作文件的接口 1.> 和 >> 2.理解“当前路径” 三、相关系统调用 1.open 2.文件描述符 3.一切皆文件 4.再次理解重定向 一、文件基础认识 文件 内容 属性。换句话说&#xff0c;如果在电脑上新建了一个空白文档&#xff0…...

鸿蒙多线程开发——线程间数据通信对象03(sendable)

1、简 介 在传统JS引擎上&#xff0c;对象的并发通信开销的优化方式只有一种&#xff0c;就是把实现下沉到Native侧&#xff0c;通过Transferable对象的转移或共享方式降低并发通信开销。而开发者仍然还有大量对象并发通信的诉求&#xff0c;这个问题在业界的JS引擎实现上并没…...

linux从0到1——shell编程7

声明&#xff01; 学习视频来自B站up主 **泷羽sec** 有兴趣的师傅可以关注一下&#xff0c;如涉及侵权马上删除文章&#xff0c;笔记只是方便各位师傅的学习和探讨&#xff0c;文章所提到的网站以及内容&#xff0c;只做学习交流&#xff0c;其他均与本人以及泷羽sec团队无关&a…...

.Net框架,除了EF还有很多很多......

文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...

MongoDB学习和应用(高效的非关系型数据库)

一丶 MongoDB简介 对于社交类软件的功能&#xff0c;我们需要对它的功能特点进行分析&#xff1a; 数据量会随着用户数增大而增大读多写少价值较低非好友看不到其动态信息地理位置的查询… 针对以上特点进行分析各大存储工具&#xff1a; mysql&#xff1a;关系型数据库&am…...

循环冗余码校验CRC码 算法步骤+详细实例计算

通信过程&#xff1a;&#xff08;白话解释&#xff09; 我们将原始待发送的消息称为 M M M&#xff0c;依据发送接收消息双方约定的生成多项式 G ( x ) G(x) G(x)&#xff08;意思就是 G &#xff08; x ) G&#xff08;x) G&#xff08;x) 是已知的&#xff09;&#xff0…...

全球首个30米分辨率湿地数据集(2000—2022)

数据简介 今天我们分享的数据是全球30米分辨率湿地数据集&#xff0c;包含8种湿地亚类&#xff0c;该数据以0.5X0.5的瓦片存储&#xff0c;我们整理了所有属于中国的瓦片名称与其对应省份&#xff0c;方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...

【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)

🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...

大模型多显卡多服务器并行计算方法与实践指南

一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...

DingDing机器人群消息推送

文章目录 1 新建机器人2 API文档说明3 代码编写 1 新建机器人 点击群设置 下滑到群管理的机器人&#xff0c;点击进入 添加机器人 选择自定义Webhook服务 点击添加 设置安全设置&#xff0c;详见说明文档 成功后&#xff0c;记录Webhook 2 API文档说明 点击设置说明 查看自…...

在鸿蒙HarmonyOS 5中使用DevEco Studio实现企业微信功能

1. 开发环境准备 ​​安装DevEco Studio 3.1​​&#xff1a; 从华为开发者官网下载最新版DevEco Studio安装HarmonyOS 5.0 SDK ​​项目配置​​&#xff1a; // module.json5 {"module": {"requestPermissions": [{"name": "ohos.permis…...

探索Selenium:自动化测试的神奇钥匙

目录 一、Selenium 是什么1.1 定义与概念1.2 发展历程1.3 功能概述 二、Selenium 工作原理剖析2.1 架构组成2.2 工作流程2.3 通信机制 三、Selenium 的优势3.1 跨浏览器与平台支持3.2 丰富的语言支持3.3 强大的社区支持 四、Selenium 的应用场景4.1 Web 应用自动化测试4.2 数据…...

抽象类和接口(全)

一、抽象类 1.概念&#xff1a;如果⼀个类中没有包含⾜够的信息来描绘⼀个具体的对象&#xff0c;这样的类就是抽象类。 像是没有实际⼯作的⽅法,我们可以把它设计成⼀个抽象⽅法&#xff0c;包含抽象⽅法的类我们称为抽象类。 2.语法 在Java中&#xff0c;⼀个类如果被 abs…...