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 通常用于切换回图形界面。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/922567.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

高新技术行业中的知识管理:关键性、挑战、策略及工具应用

知识管理的关键性 在瞬息万变的信息时代&#xff0c;知识已成为高新技术行业的核心竞争要素。知识管理&#xff0c;这一旨在高效组织、整合并应用企业内外部知识资源的管理策略&#xff0c;对于推动高新技术企业的持续创新与发展至关重要。它不仅能够激发研发团队的创造力&…

IDEA 2024安装指南(含安装包以及使用说明 cannot collect jvm options 问题 四)

汉化 setting 中选择插件 完成 安装出现问题 1.可能是因为之前下载过的idea&#xff0c;找到连接中 文件&#xff0c;卸载即可。

【MyBatis】全局配置文件—mybatis.xml 创建xml模板

文章目录 模板文件配置元素typeAliasessettings 模板文件 创建模板 按照顺序打开【File】–>【settings】–>【Editor】–>【File and Code Templates】&#xff08;或直接搜索&#xff09; <?xml version"1.0" encoding"UTF-8" ?> <…

uni-app 发布媒介功能(自由选择媒介类型的内容) 设计

1.首先明确需求 我想做一个可以选择媒介的内容&#xff0c;来进行发布媒介的功能 &#xff08;媒介包含&#xff1a;图片、文本、视频&#xff09; 2.原型设计 发布-编辑界面 通过点击下方的加号&#xff0c;可以自由选择添加的媒介类型 但是因为预览中无法看到视频的效果&…

【Go】-go中的锁机制

目录 一、锁的基础知识 1. 互斥量/互斥锁 2. CAS&#xff08;compare and swap&#xff09; 3. 自旋锁 4. 读写锁 5. 乐观锁 & 悲观锁 6. 死锁 二、go中锁机制 1. Mutex-互斥锁 2. RWMutex-读写锁 2.1 RWMutex流程概览 2.2 写锁饥饿问题 2.3. golang的读写锁源…

Python 使用 Selenuim进行自动化点击入门,谷歌驱动,以百度为例

一、首先要下载谷歌驱动 1.&#xff08;打开谷歌浏览器 - 设置 - 关于谷歌&#xff0c;查看谷歌浏览器版本&#xff0c;否则不对应无法调用&#xff0c;会提示&#xff1a;selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This versio…

RCVS:A Unifed Registration and FusionFramework for Video Streams 译文

摘要:红外与可见光的跨模态配准与融合可以生成更全面的目标和场景信息表示。以前的框架主要关注于解决模态差异以及保留不同模态信息对不同静态图像对之间配准和融合任务性能的影响。然而&#xff0c;这些框架忽略了在现实世界设备上的实际部署&#xff0c;特别是在视频流的背景…

JDBC编程---Java

目录 一、数据库编程的前置 二、Java的数据库编程----JDBC 1.概念 2.JDBC编程的优点 三.导入MySQL驱动包 四、JDBC编程的实战 1.创造数据源&#xff0c;并设置数据库所在的位置&#xff0c;三条固定写法 2.建立和数据库服务器之间的连接&#xff0c;连接好了后&#xff…

Python 抓取笑话内容并存入 CSV

在互联网上&#xff0c;有许多有趣的内容等待我们去挖掘和收集。今天&#xff0c;我们就来深入了解一段 Python 代码&#xff0c;它能够帮助我们从指定网站抓取笑话内容&#xff0c;并将其整理保存为 CSV 文件&#xff0c;方便后续查看和分析。 结果展示&#xff08;文末附完整…

Redis-09 SpringBoot集成Redis

Jedis 和 lettuce 基本已经过时 集成RedisTemplate 单机 1.建 Modul 2.改pom <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instanc…

Linux:自定义Shell

本文旨在通过自己完成一个简单的Shell来帮助理解命令行Shell这个程序。 目录 一、输出“提示” 二、获取输入 三、切割字符串 四、执行指令 1.子进程替换 2.内建指令 一、输出“提示” 这个项目基于虚拟机Ubuntu22.04.5实现。 打开终端界面如图所示。 其中。 之前&#x…

夜天之书 #104 开源软件有断供的风险吗?

近期&#xff0c;Linux 上游因为受美国出口管制条例的影响&#xff0c;将移除部分开发者的 MAINTAINER 权限&#xff0c;引起了新一轮对开源依赖的重新评估。 关于其中开源精神和社群治理的讨论&#xff0c;卫 Sir 的两篇文章已经讨论得比较清楚&#xff08;见尾注&#xff09;…

tensorforce(dqn框架)安装

win7 64位操作系统 python版本&#xff1a;3.8.10 pip install tensorflow 默认的tensorflow的版本是2.31.0&#xff0c;安装tensorforce后自动升级到3.6.0 tensorflow:升级到3.6.0 keras&#xff1a;升级到3.6.0 tensorforce安装 pip3 install tensorforce protobuf 需要降到…

STM32抢占优先级不生效

板类型&#xff1a;STM32F103精英开发板代码背景&#xff1a; 设置了USART1中断和KEY_UP中断(使用EXTI0外部中断)两个中断的优先级分组都设为2&#xff08;2bit抢占优先级&#xff0c;2bit响应优先级)EXTI0中断抢占优先级设为3&#xff0c; 响应优先级设为3USART1抢占优先级设…

4.1_未授权漏洞

未授权漏洞 成因&#xff1a;配置错误&#xff0c;默认口令&#xff08;弱口令&#xff09;&#xff0c;接口配置不当&#xff1b;未授权漏洞 漏洞利用方式 Redis 未授权访问漏洞 Getshell方式 写入webshell&#xff1b; 连接目标redis&#xff1a;redis-cli -h 192.168.7…

快速识别模型:simple_ocr,部署教程

快速识别图片中的英文、标点符号、数学符号、Emoji, 模型会输出图片中文字行的坐标位置、最低得分、识别结果。当前服务用到的模型&#xff1a;检测模型、数字识别、英文符号识别。 一、部署流程 1.更新基础环境 apt update2.安装miniconda wget https://repo.anaconda.com/…

衡山派D133EBS 开发环境安装及SDK编译烧写镜像烧录

1.创建新文件夹&#xff0c;用来存放SDK包&#xff08;其实本质就是路径要对就ok了&#xff09;&#xff0c;右键鼠标通过Open Git Bash here来打开git 输入命令 git clone --depth1 https://gitee.com/lcsc/luban-lite.git 来拉取&#xff0c;如下所示&#xff1a;&#xff0…

蓝桥杯不知道叫什么题目

小蓝有一个整数&#xff0c;初始值为1&#xff0c;他可以花费一些代价对这个整数进行变换。 小蓝可以花贵1的代价将教数增加1。 小蓝可以花费3的代价将整数增加一个值,这个值是整数的数位中最大的那个(1到9) .小蓝可以花费10的代价将整数变为原来的2倍, 例如&#xff0c;如果整…

读取mysql、kafka数据筛选后放入mysql

要求&#xff1a; 从kafka的topic-car中读取卡口数据&#xff0c;将超速车辆写入mysql的t_monitor_info表 当通过卡口的车速超过该卡口限速的1.2倍 就认定为超速。 G107 1&#xff09;卡口数据格式如下&#xff1a; action_time long --摄像头拍摄时间戳&#xff0c;精确到秒…

CVE-2022-24124

根据提示 访问api/get-organizations salmap和手工注入都不行&#xff0c;使用substring() 查库&#xff0c;查到有4个库 ?p1&pageSize10&valuee99nb&sortField&sortOrder&field (substring((select count(schema_name) from information_schema.sche…