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

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

 

通过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

相关文章:

  • 粒子群算法PSO求解最大值和最小值案例(超详细注释)
  • LeetCode每日一题——902. 最大为 N 的数字组合
  • Java学习--JDBC
  • C++中GDAL批量创建多个栅格图像文件并批量写入数据
  • 基于maven的spring项目实现登录注册(SSM)
  • 【C++】动态内存管理
  • 波士顿动力再惊艳!机器人大秀男团舞,举手投足人味满满,多次转卖后展示新标签...
  • Python 代码托管到码云平台,原来这么简单
  • 【MATLAB教程案例26】图像特征点提取算法matlab仿真与分析——sift,surf,kaze,corner,BRISK等
  • 前端深拷贝与浅拷贝(附实现方法)
  • C#工业生产线MES系统,源代码分享
  • 2022软考高项十大领域知识整理(四)-人力资源管理、干系人管理、采购管理
  • 企业级低代码平台Jeecgboot3.4.2及3.4.3版本新功能介绍
  • SQL SERVER Sequence Number 序列号
  • 【Web实战-Tomcat-Servlet-Thymeleaf -JDBC-MySQL】浏览器页面显示数据库数据(水果库存系统)
  • 深入了解以太坊
  • 《Java8实战》-第四章读书笔记(引入流Stream)
  • Cumulo 的 ClojureScript 模块已经成型
  • Docker入门(二) - Dockerfile
  • IP路由与转发
  • LeetCode刷题——29. Divide Two Integers(Part 1靠自己)
  • Promise面试题2实现异步串行执行
  • VuePress 静态网站生成
  • 从零搭建Koa2 Server
  • 开源SQL-on-Hadoop系统一览
  • 使用 Docker 部署 Spring Boot项目
  • 数据科学 第 3 章 11 字符串处理
  • ionic入门之数据绑定显示-1
  • MPAndroidChart 教程:Y轴 YAxis
  • NLPIR智能语义技术让大数据挖掘更简单
  • PostgreSQL 快速给指定表每个字段创建索引 - 1
  • 阿里云API、SDK和CLI应用实践方案
  • 湖北分布式智能数据采集方法有哪些?
  • 京东物流联手山西图灵打造智能供应链,让阅读更有趣 ...
  • ​虚拟化系列介绍(十)
  • #{} 和 ${}区别
  • #我与Java虚拟机的故事#连载07:我放弃了对JVM的进一步学习
  • (附源码)计算机毕业设计ssm电影分享网站
  • (简单) HDU 2612 Find a way,BFS。
  • (利用IDEA+Maven)定制属于自己的jar包
  • (十二)python网络爬虫(理论+实战)——实战:使用BeautfulSoup解析baidu热搜新闻数据
  • (四) 虚拟摄像头vivi体验
  • (完整代码)R语言中利用SVM-RFE机器学习算法筛选关键因子
  • (学习日记)2024.03.12:UCOSIII第十四节:时基列表
  • (转)LINQ之路
  • (转)mysql使用Navicat 导出和导入数据库
  • ..回顾17,展望18
  • .gitignore
  • .NET CLR Hosting 简介
  • .NET MVC 验证码
  • .net解析传过来的xml_DOM4J解析XML文件
  • .NET下的多线程编程—1-线程机制概述
  • /etc/motd and /etc/issue
  • @RequestBody与@ResponseBody的使用
  • [.NET]桃源网络硬盘 v7.4