dmesg 程序崩溃调试2

dmesg命令基于缓冲区打印信息dmesg -c可以清除该内存信息清除后demsg 命令不显示任何信息,但可以到/var/log/dmesg查看信息

dmesg |tail 20dmesg |head 20dmesg |grep sdadmesg |grep ttydmesg |grep memorydmesg |grep DMAdmesg |grep usb

[[email protected] var]# dmesg | more
Linux version 2.6.32 ([email protected]) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-55))
 #1 SMP Sun Sep 20 18:58:21 PDT 2015
Command line: ro root=LABEL=/ rhgb quiet
KERNEL supported cpus:
  Intel GenuineIntel
  AMD AuthenticAMD
  Centaur CentaurHauls
BIOS-provided physical RAM map:
 BIOS-e820: 0000000000000000 - 000000000009f400 (usable)
 BIOS-e820: 000000000009f400 - 00000000000a0000 (reserved)
 BIOS-e820: 00000000000ca000 - 00000000000cc000 (reserved)
 BIOS-e820: 00000000000dc000 - 0000000000100000 (reserved)
 BIOS-e820: 0000000000100000 - 0000000057ee0000 (usable)
 BIOS-e820: 0000000057ee0000 - 0000000057eff000 (ACPI data)
 BIOS-e820: 0000000057eff000 - 0000000057f00000 (ACPI NVS)
 BIOS-e820: 0000000057f00000 - 0000000058000000 (usable)
 BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved)
 BIOS-e820: 00000000fec00000 - 00000000fec10000 (reserved)
 BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved)
 BIOS-e820: 00000000fffe0000 - 0000000100000000 (reserved)
DMI present.
Phoenix BIOS detected: BIOS may corrupt low RAM, working around it.
e820 update range: 0000000000000000 - 0000000000010000 (usable) ==> (reserved)
last_pfn = 0x58000 max_arch_pfn = 0x400000000
MTRR default type: uncachable
MTRR fixed ranges enabled:
  00000-9FFFF write-back
  A0000-BFFFF uncachable
  C0000-CBFFF write-protect
  CC000-EFFFF uncachable
  F0000-FFFFF write-protect
[[email protected] var]# dmesg | less
Linux version 2.6.32 ([email protected]) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-55))
 #1 SMP Sun Sep 20 18:58:21 PDT 2015
Command line: ro root=LABEL=/ rhgb quiet
KERNEL supported cpus:
  Intel GenuineIntel
  AMD AuthenticAMD
  Centaur CentaurHauls
BIOS-provided physical RAM map:
 BIOS-e820: 0000000000000000 - 000000000009f400 (usable)
 BIOS-e820: 000000000009f400 - 00000000000a0000 (reserved)
 BIOS-e820: 00000000000ca000 - 00000000000cc000 (reserved)
 BIOS-e820: 00000000000dc000 - 0000000000100000 (reserved)
 BIOS-e820: 0000000000100000 - 0000000057ee0000 (usable)
 BIOS-e820: 0000000057ee0000 - 0000000057eff000 (ACPI data)
 BIOS-e820: 0000000057eff000 - 0000000057f00000 (ACPI NVS)
 BIOS-e820: 0000000057f00000 - 0000000058000000 (usable)
 BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved)
 BIOS-e820: 00000000fec00000 - 00000000fec10000 (reserved)
 BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved)
 BIOS-e820: 00000000fffe0000 - 0000000100000000 (reserved)
DMI present.
Phoenix BIOS detected: BIOS may corrupt low RAM, working around it.
e820 update range: 0000000000000000 - 0000000000010000 (usable) ==> (reserved)
last_pfn = 0x58000 max_arch_pfn = 0x400000000
MTRR default type: uncachable
MTRR fixed ranges enabled:
  00000-9FFFF write-back
  A0000-BFFFF uncachable
  C0000-CBFFF write-protect
  CC000-EFFFF uncachable
  F0000-FFFFF write-protect
[[email protected] var]# dmesg | tail
Bluetooth: L2CAP socket layer initialized
Bluetooth: RFCOMM TTY layer initialized
Bluetooth: RFCOMM socket layer initialized
Bluetooth: RFCOMM ver 1.11
Bluetooth: HIDP (Human Interface Emulation) ver 1.2
eth0: no IPv6 routers present
hdc: task_pio_intr: status=0x51 { DriveReady SeekComplete Error }
hdc: task_pio_intr: error=0x04 { AbortedCommand }
hdc: possibly failed opcode: 0xec
xx[4107]: segfault at 0 ip 0000000000400454 sp 00007fff206b7d60 error 6 in xx[400000+1000]
[[email protected] var]# dmesg | grep ttyS*
console [tty0] enabled
serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
00:0a: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
00:0b: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
You have new mail in /var/spool/mail/root
dmesg -c    清除缓存
tail -n 20 /var/log/dmesg
[[email protected] log]# tail -n 20 /var/log/dmesg
Floppy drive(s): fd0 is 1.44M
FDC 0 is a post-1991 82077
ide-cd driver 5.00
ide-cd: hdc: ATAPI 1X DVD-ROM DVD-R/RAM CD-R/RW drive, 32kB Cache
Uniform CD-ROM driver Revision: 3.20
sd 0:0:0:0: Attached scsi generic sg0 type 0
lp0: using parport0 (interrupt-driven).
lp0: console ready
NET: Registered protocol family 10
lo: Disabled Privacy Extensions
md: Autodetecting RAID arrays.
md: Scanned 0 and added 0 devices.
md: autorun ...
md: ... autorun DONE.
device-mapper: multipath: version 1.1.0 loaded
EXT3 FS on sda2, internal journal
kjournald starting.  Commit interval 5 seconds
EXT3 FS on sda1, internal journal
EXT3-fs: mounted filesystem with writeback data mode.
Adding 2064344k swap on /dev/sda3.  Priority:-1 extents:1 across:2064344k 

[[email protected] log]# tail -n 20 messages
May 28 22:42:19 localhost avahi-daemon[3921]: Server startup complete. Host name is localhost.local. Local service cookie is 982515779.
May 28 22:42:20 localhost avahi-daemon[3921]: Service "SFTP File Transfer on localhost" (/services/sftp-ssh.service) successfully established.
May 28 22:42:22 localhost smartd[4007]: smartd version 5.38 [x86_64-redhat-linux-gnu] Copyright (C) 2002-8 Bruce Allen
May 28 22:42:22 localhost smartd[4007]: Home page is http://smartmontools.sourceforge.net/
May 28 22:42:22 localhost smartd[4007]: Opened configuration file /etc/smartd.conf
May 28 22:42:22 localhost smartd[4007]: Configuration file /etc/smartd.conf was parsed, found DEVICESCAN, scanning devices
May 28 22:42:22 localhost smartd[4007]: Device: /dev/hdc, opened
May 28 22:42:22 localhost smartd[4007]: Device: /dev/hdc, not ATA, no IDENTIFY DEVICE Structure
May 28 22:42:22 localhost kernel: hdc: task_pio_intr: status=0x51 { DriveReady SeekComplete Error }
May 28 22:42:22 localhost kernel: hdc: task_pio_intr: error=0x04 { AbortedCommand }
May 28 22:42:22 localhost kernel: hdc: possibly failed opcode: 0xec
May 28 22:42:22 localhost smartd[4007]: Device: /dev/sda, opened
May 28 22:42:22 localhost smartd[4007]: Device: /dev/sda, IE (SMART) not enabled, skip device Try ‘smartctl -s on /dev/sda‘ to turn on SMART features
May 28 22:42:22 localhost smartd[4007]: Monitoring 0 ATA and 0 SCSI devices
May 28 22:42:22 localhost smartd[4013]: smartd has fork()ed into background mode. New PID=4013.
May 28 22:42:25 localhost gdm[4044]: gdm_config_parse: Logdir /var/log/gdm does not exist or isn‘t a directory.  Using ServAuthDir /var/gdm.
May 28 22:42:25 localhost pcscd: winscard.c:304:SCardConnect() Reader E-Gate 0 0 Not Found
May 28 22:42:25 localhost last message repeated 3 times
May 28 22:43:45 localhost kernel: xx[4107]: segfault at 0 ip 0000000000400454 sp 00007fff206b7d60 error 6 in xx[400000+1000]
May 28 22:45:06 localhost logger: Oracle Configuration Manager failed to establish a connection to Oracle. Reconfigure using /opt/oracle/112/ccr/bin/configCCR
时间: 2024-08-02 04:13:33

dmesg 程序崩溃调试2的相关文章

dmesg 程序崩溃调试

[[email protected] log]# cat -n /root/xx.c 1 2 3 #include <stdio.h> 4 5 void func(char *p) 6 { 7 *p = 'p'; 8 } 9 10 int main(int argc, char *argv[]) 11 { 12 char *p=NULL; 13 func(p); 14 15 return 0; 16 } [[email protected] log]# /root/xx   [[email p

程序崩溃调试记录和总结

1. 多线程访问共享资源没有加锁 错误提示:Segmentation fault! 解决办法: 多线程读不需要加锁 多线程同时读写则需要加锁 加锁的方法有互斥量.信号量.读写锁.记录锁.互斥量和条件变量结合提供的事件通知机制. C++11里则有,lock_guard,unique_lock.两者都是在构造的时候加锁,析构的时候加锁.但unique_lock提供更多的特性,比如可以指定它在构造的时候不加锁,在需要的时候再调用.lock()加锁.如果和condition_variable结合使用只能

IOS调试技巧:当程序崩溃的时候怎么办 iphone IOS

转载:http://article.ityran.com/archives/1143 有这样一种情形:当我们正在快乐的致力于我们的app时,并且什么看都是无比顺利,但是突然,坑爹啊,它崩溃了.(悲伤地音乐响起) 我们需要做的第一件事就是:不要惊慌. 修复崩溃不是很困难的.假如你崩溃了,并且胡乱的改些东西,而且还在不停的念着咒语希望bug神奇的自动消失,你大多数情况下都会使情况更麻烦.相反的,你需要知道一些系统的方法,并且学习怎么找到崩溃和他的原因. 第一件需要知道的就是在你的代码中准确的找到cr

Python Cookbook(第3版)中文版:14.12 调试基本的程序崩溃错误

14.12 调试基本的程序崩溃错误? 问题? 你的程序崩溃后该怎样去调试它? 解决方案? 如果你的程序因为某个异常而崩溃,运行 python3 -i someprogram.py 可执行简单的调试.-i 选项可让程序结束后打开一个交互式shell.然后你就能查看环境,例如,假设你有下面的代码: # sample.py def func(n): return n + 10 func('Hello') 运行 python3 -i sample.py 会有类似如下的输出: bash % python3

Windows 程序 dump 崩溃调试

Windows 程序捕获崩溃异常 生成dump 概述 事情的起因是,有个同事开发的程序,交付的版本程序,会偶尔随机崩溃了. 悲催的是没有输出log,也没有输出dump文件. 我建议他给程序代码加个异常捕获,在崩溃时生成dump,方便找出问题点. 隔了一天之后,短暂交流,发现他没有这个开发经验,我只好披挂上阵了. 开动 查阅MSDN文档,和stackoverlfow.com的相关文章,可知 SetUnhandledExceptionFilter 可以捕获触发系统崩溃的异常 风风火火开始写代码 vo

Ubuntu16.04下写的Qt程序,调试时没问题,运行时偶现崩溃 (需要在运行时生成core dump文件,QMAKE_CC += -g)

记录一下 Ubuntu16.04下写的Qt程序,调试时没问题,运行时偶现崩溃 需要在运行时生成core dump文件 首先在pro结尾里加入 QMAKE_CC += -g QMAKE_CXX += -g QMAKE_LINK += -g 在终端输入 ulimit -c 显示为 0 然后输入 ulimit -c unlimited 继续在终端运行编写的程序 出错后,会在当前目录生成 core 文件 然后在终端执行 “gdb 你的程序名 core” 然后输入 bt 对该错误进行跟踪调试 (gdb)

你的java/c/c++程序崩溃了?揭秘段错误(Segmentation fault)(3)

前言 接上两篇: 你的C/C++程序为什么无法运行?揭秘Segmentation fault (1) 你的C/C++程序为什么无法运行?揭秘Segmentation fault (2) 写到这里,越跟,越发现真的是内核上很白,非一般的白. 但是既然是研究,就定住心,把段错误搞到清楚明白. 本篇将作为终篇,来结束这个系列,也算是对段错误和程序调试.寻找崩溃原因(通常不会给你那么完美的stackstrace和人性化的错误提示)的再深入. 本篇使用到的工具或命令: dmesg strace gdb l

iOS中崩溃调试的使用和技巧总结 韩俊强的博客

每日更新关注:http://weibo.com/hanjunqiang  新浪微博 在iOS开发调试过程中以及上线之后.程序经常会出现崩溃的问题.简单的崩溃还好说,复杂的崩溃就须要我们通过解析Crash文件来分析了,解析Crash文件在iOS开发中是比較常见的. 如今网上有非常多关于解析崩溃信息的博客.可是大多质量參差不齐,或者有些细节没有注意到.今天写一篇博客总结一下我对崩溃调试的使用和技巧,假设有哪些错误或遗漏.还请指点.谢谢. 获取崩溃信息 在iOS中获取崩溃信息的方式有非常多,比較常见的

结合程序崩溃后的core文件分析bug

结合程序崩溃后的core文件分析bug 引言 在<I/O的效率比较>中,我们在修改图1程序的BUF_SIZE为8388608时,运行程序出现崩溃,如下图1: 图1. 段错误 一般而言,导致程序段错误的原因如下: 内存访问出错,这类问题的典型代表就是数组越界. 非法内存访问,出现这类问题主要是程序试图访问内核段内存而产生的错误. 栈溢出, Linux默认给一个进程分配的栈空间大小为8M,因此你的数组开得过大的话会出现这种问题. 首先我们先看一下系统默认分配的资源: $ ulimit -acore