Linux系统下查看被杀死进程的信息

2023-11-15

 

通过dmesg 命令分析原因

软件在运行时显示 进程被杀死,首先通过命令查看被杀死的进程的情况

dmesg | egrep -i -B100 'killed process'

显示,在被杀死的时候该进程占用的内存

[22588.717326] Killed process 8163 (XXX进程)

total-vm:5 826 324kB,

anon-rss:5 454 392kB,

file-rss:4kB,

shmem-rss:0kB

进程号:8163

total-vm:total virtual memory. 进程使用的总的虚拟内存

rss: resident set size. 驻留集大小。驻留集是指进程已装入内存的页面的集合。

anon-rss:anonymous rss. 匿名驻留集。比如malloc出来的就是匿名的。

可以看到该进程占用内存过大,达到了5G多,被杀死的原因是 outofmemory,debug定位到具体的函数,最后发现是一个链表没有被回收,在一个循环中不断的被追加,导致内存溢出。

其他命令

Linux 内核有个机制叫OOM killer(Out Of Memory killer),该机制会监控那些占用内存过大,尤其是瞬间占用内存很快的进程,然后防止内存耗尽而自动把该进程杀掉。内核检测到系统内存不足、挑选并杀掉某个进程的过程可以参考内核源代码linux/mm/oom_kill.c,当系统内存不足的时候,out_of_memory()被触发,然后调用select_bad_process()选择一个”bad”进程杀掉。

 

查看系统日志同样可以查看被杀死进程的状态。

egrep -i -r 'killed process' /var/log

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux系统下查看被杀死进程的信息 的相关文章

  • 如何通过ssh获取远程命令的退出代码

    我正在通过 ssh 从远程计算机运行脚本 ssh some cmd my script 现在 我想在本地计算机上存储 shell 脚本的退出状态 我该怎么做 假设没有任何问题ssh其本身 其退出状态是在远程主机上执行的最后一个命令的退出状态
  • PIL 的 Image.show() 带来*两个*不同的查看器

    在 python shell 中处理图像时 我使用 image show 其中 image 是 Image 的实例 很久以前什么也没发生 但在定义了一个名为 xv 的 Mirage 符号链接后 我很高兴 最近几天 show 将显示 Imag
  • 应用程序中两个不同版本的库

    考虑一个场景 其中有两个不同版本的共享库 考虑 A 1 so 链接到 B so A 2 so 链接到 C so 现在 B so 和 C so 都链接到 d exe 当 B so 想要调用 A 1 so 中的函数时 它最终会调用 A 2 so
  • 如何在Linux上用C/C++编写Web服务器[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我正在考虑在 Linux 平台上开发一个小型 阅读 初级 Web 服务器 但我不知道从哪里开始 我希望它能够做的是 监听特定端口 接受
  • Linux 内核使用的设备树文件 (dtb) 可视化工具? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一个可以图形化表示Linux内核中使用的硬件设备树的工具 我正在尝试了解特定 Arm 芯片组
  • 任何退出 bash 脚本但不退出终端的方法

    当我使用exitshell 脚本中的命令 该脚本将终止终端 提示符 有什么方法可以终止脚本然后停留在终端中吗 我的剧本run sh预计通过直接获取或从另一个脚本获取来执行 编辑 更具体地说 有两个脚本run2 sh as run sh ec
  • 如何从 Bash 命令行在后台 Vim 打开另一个文件?

    我正在从使用 Gvim 过渡到使用控制台 Vim 我在 Vim 中打开一个文件 然后暂停 Vim 在命令行上运行一些命令 然后想返回到 Vim Ctrl Z 在正常模式下 暂停 Vim 并返回到控制台 fg可用于将焦点返回到 Vim job
  • Ruby:在 Ubuntu 上安装 rmagick

    我正在尝试在 Ubuntu 10 04 上安装 RMagick 看起来here https stackoverflow com questions 1482823 is there an easy way to install rmagic
  • 为什么此 NASM 代码会打印我的环境变量?

    本学期我刚刚完成计算机体系结构课程 除其他外 我们一直在涉足 MIPS 汇编并在 MARS 模拟器中运行它 今天 出于好奇 我开始在我的 Ubuntu 机器上摆弄 NASM 基本上只是将教程中的内容拼凑起来 并感受一下 NASM 与 MIP
  • “git add”返回“致命:外部存储库”错误

    我刚刚进入 git 的奇妙世界 我必须提交我对程序所做的一系列更改 位于名为的目录中 var www myapp 我创建了一个新目录 home mylogin gitclone 从这个目录中 我做了一个git clone针对公共回购 我能够
  • 使用 libusb 输出不正确

    我用libusb编写了一个程序 我怀疑输出是否正确 因为所有条目都显示相同的供应商和产品 ID 以下是代码 include
  • 嵌入清单文件以要求具有 mingw32 的管理员执行级别

    我正在 ubuntu 下使用 i586 mingw32msvc 交叉编译应用程序 我很难理解如何嵌入清单文件以要求 mingw32 具有管理员执行级别 对于我的例子 我使用了这个hello c int main return 0 这个资源文
  • 如何从 C++ 程序中重新启动 Linux?

    我有一个 Qt 4 GUI 我需要在下拉菜单中提供一个选项 允许用户选择重新启动计算机 我意识到这对于以其他方式重新启动计算机的能力来说似乎是多余的 但选择需要保留在那里 我尝试使用 system 来调用以下内容 suid root she
  • 如何在线程创建和退出时调用函数?

    include
  • Linux 使用 boost asio 拒绝套接字绑定权限

    我在绑定套接字时遇到问题 并且以用户身份运行程序时权限被拒绝 这行代码会产生错误 acceptor new boost asio ip tcp acceptor io boost asio ip tcp endpoint boost asi
  • 如何才能将 TCP 连接返回到同一端口?

    机器是 RHEL 5 3 内核 2 6 18 有时我在 netstat 中注意到我的应用程序有连接 建立了 TCP 连接本地地址 and 国外地址是一样的 其他人也报告了同样的问题 症状与链接中描述的相同 客户端连接到本地运行的服务器的端口
  • SSH,运行进程然后忽略输出

    我有一个命令可以使用 SSH 并在 SSH 后运行脚本 该脚本运行一个二进制文件 脚本完成后 我可以输入任意键 本地终端将恢复到正常状态 但是 由于该进程仍在我通过 SSH 连接的计算机中运行 因此任何时候它都会登录到stdout我在本地终
  • 适用于 Linux 的轻量级 IDE [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 使用 \r 并打印一些文本后如何清除控制台中的一行?

    对于我当前的项目 有一些代码很慢并且我无法使其更快 为了获得一些关于已完成 必须完成多少的反馈 我创建了一个进度片段 您可以在下面看到 当你看到最后一行时 sys stdout write r100 80 n I use 80覆盖最终剩余的
  • 通过 Visual Studio 2017 使用远程调试时 Linux 控制台输出在哪里?

    我的Visual Studio 2017 VS2017 成功连接Linux系统 代码如下 include

随机推荐

  • 哈工大2020春软件构造期末试题

  • 机器视觉 解决方案

    1 光源选型 光源作用及选型方法 照明作用 1 使需要被观察的特征与需要被忽略的特征之间产生的最大的对此度 从而易于特征的区分 2 排除周围环境光的干扰 光源的颜色 如果需要打成白色 那么就得使用与此颜色相同或相似的光源 光的波长一样活接近
  • C#运行程序无法启动,因为应用程序的并行配置不正确【解决方案】

    最近编写个C 控制台应用程序 调试正常之后 通过U盘copy到产线电脑 结果运行报错如下 1 通过代码调试发现无任何效果 说面不是代码引起的异常也捕获不到这个系统错误 2 重新生成程序 将整个Debug项目文件放置到产线电脑 可以正常运行
  • git记录python代码

    准备阶段 cd path 进入要创建文件夹的路径 mkdir name 创建文件夹 建立工作区 pwm 查看所在文件价路径名 git init 文件夹初始化 此后可以记录文档变化 进行阶段 git add FileName 后缀 将file
  • centos7安装libreoffice

    下载地址 https www libreoffice org download download type rpm x86 64 version 6 1 4 lang zh CN 1 将下载的文件拷贝到安装的目录 mv LibreOffic
  • SpringBoot介绍及环境搭建

    什么是SpringBoot Spring Boot是由Pivotal团队提供的全新框架 其设计目的是用来简化新Spring应用的初始搭建以及开发过程 该框架使用了特定的方式来进行配置 从而使开发人员不再需要定义样板化的配置 SpringBo
  • ImportError: cannot import name ‘render_to_response‘ 解决方法

    背景 在开发 Django 项目 的时候 原来的版本是1 xx版本 现在直接用 diango3 0 出现的问题 在直接运行爆出错误 ImportError cannot import name render to response from
  • 【c++】——海量数据处理各种面试题(位图的实现和应用,布隆过滤器的应用,哈希切分)

    目录 一 位图 1 1 位图的概念 1 2 位图的使用场景 题目一 题目二 题目三 题目四 二 布隆过滤器 2 1 布隆过滤器的概念 2 2 布隆过滤器优点 2 3 布隆过滤器缺点 2 4 布隆过滤器使用场景 问题五 问题六 问题七 一 位
  • dnf 跨服 服务器 位置,《DNF》86版本跨区表一览 看你属于哪个跨区频道

    dnf86版本跨区表一览 86版本最新跨区分布表格 来看看你属于哪个跨区频道吧 下面小编就为大家带来86版本跨区表一览 希望能给大家带来一些帮助 一起来看看吧 跨一 广东1区 广东2区 广东3区 广东4区 广东5区 广东6区 广东7区 广东
  • 【完全开源】TurMass-LPWAN TK8610 evb开发板

    目录 一 概述 二 特点 1 免配置 2 快速上手 三 开发板功能 1 快速配置 2 演示功能 3 性能测试 四 TK8610 芯片功能框图 五 电源电路 六 USB电路 七 程序下载电路 八 天线射频电路 九 按键及LED 十 资料 一
  • Arduino nRF52840高级蓝牙5

    在本文中 我们将学习使用Arduino IDE的Nordic nRF52840低功耗蓝牙5 0及其应用 nRF52840 SoC是由Nordic Semiconductor设计和开发的灵活 高效的Bluetooth 5 nRF52840 S
  • 改进的z-buffer算法实现 c

    一 实验目的 改进的z buffer算法实现 二 实验工具 VC6 0 三 实验步骤 算法思想 先将Z缓冲器中各单元的初始值置为最小值 当要改变某个象素的颜色值时 首先检查当前多边形的深度值是否大于该象素原来的深度值 保存在该象素所对应的Z
  • ubuntu20.04 NVIDIA显卡驱动安装

    前情介绍 大概就是自己手动装的NVIDIA 显卡突然寄掉了 就是输入 nvidia smi 显示驱动找不到类似的 NVIDIA SMI has failed because it couldn t communicate with the
  • fortify代码扫描使用教程

    配置信息 HP Fortify SCA and Applications 4 10 WIN7 64位家庭版 打开fortify的工作台 选择Advanced Scan 如果你知道源代码是java的可以选择Scan Java C 可以选择Sc
  • 用while语句输出100以内的素数

    include
  • 【Node.js实战】一文带你开发博客项目之登录(对接完毕,cookie、session、redis各司其职)

    个人简介 个人主页 前端杂货铺 学习方向 主攻前端方向 也会涉及到服务端 个人状态 在校大学生一枚 已拿多个前端 offer 秋招 未来打算 为中国的工业软件事业效力n年 推荐学习 前端面试宝典 Vue2 Vue3 Vue2 Vue3项目实
  • 22年美赛c题-交易策略

    目录 题目 前言 数据预处理 模型假设 第一问 总体思路 预测模型 评价指标 MACD 评价指标 RSI 评价指标3 预测模型 层次分析法 AHP 交易模型 第二问 第三问 模型的不足 题目 开发一个模型 该模型仅基于当天的价格数据提供最佳
  • 2022护网日记,护网工作内容、护网事件、告警流量分析

    作者主页 士别三日wyx 作者简介 CSDN top100 阿里云博客专家 华为云享专家 网络安全领域优质创作者 2022护网日记 一 监控设备 二 工作内容 三 安全事件 1 失陷主机排查 2 后门网站修复 四 告警流量分析 1 信息泄露
  • 7-4 快速排序

    7 4 快速排序 20 分 注 由于是用map计数暴力实现的 所以当数据量大的时候就会WA 众所周知 Keven是一个ACMer 他今天刚刚学会了快速排序 他非常开心 因为他可以快速的找到区间第K小的数字了 但是同为ACMer的JOJO看不
  • Linux系统下查看被杀死进程的信息

    通过dmesg 命令分析原因 软件在运行时显示 进程被杀死 首先通过命令查看被杀死的进程的情况 dmesg egrep i B100 killed process 显示 在被杀死的时候该进程占用的内存 22588 717326 Killed