摘要: crash提供了eval命令,实现了一些很好用的功能,下面学习一下。 格式: eval [-b][-l] (表达式) | 值 支持的运算符:+ - & | ^ * % / << >> 下面是需要注意的: 括号并不是必须的,但是如果使用了|、<<或者>>,那么需要使用括号 crash> eval (1 阅读全文
posted @ 2023-09-23 22:55 dolinux 阅读(173) 评论(0) 推荐(0)
摘要: crash的dev命令可以获取系统磁盘IO的统计数据。 获取所有磁盘的IO统计数据 crash> dev -d MAJOR GENDISK NAME REQUEST_QUEUE TOTAL ASYNC SYNC 8 ffff88de95d51000 sdm ffff88de94a90000 6537 阅读全文
posted @ 2023-09-23 22:09 dolinux 阅读(139) 评论(0) 推荐(0)
摘要: 在linux中通过/proc/ioport和/proc/iomem可以获取系统的IO端口和内存的布局信息,在crash中需要使用dev命令来获取。 crash> dev -i RESOURCE RANGE NAME ffffffff822668c0 0000-ffff PCI IO ffff88de 阅读全文
posted @ 2023-09-23 21:50 dolinux 阅读(84) 评论(0) 推荐(0)
摘要: 在linux系统上用lspci可以查看PCI设备信息,crash的dev命令也提供了这个功能。 crash> dev -p ROOT BUS BUSNAME ffff893eaeb43000 0000:00 PCI DEV DO:BU:SL.FN CLASS PCI_ID TYPE ffff88de 阅读全文
posted @ 2023-09-23 21:43 dolinux 阅读(150) 评论(0) 推荐(0)
摘要: 通过sys命令可以获取当前系统的系统调用的信息: crash> sys -c NUM SYSTEM CALL FILE AND LINE NUMBER 0 __x64_sys_read ../fs/read_write.c: 621 1 __x64_sys_write ../fs/read_writ 阅读全文
posted @ 2023-09-23 21:34 dolinux 阅读(96) 评论(0) 推荐(0)
摘要: 在编译内核时如果配置了CONFIG_IKCONFIG,那么内核配置文件会被内嵌到内核中,那么可以通过crash工具将其输出出来。 crash> sys config # # Automatically generated file; DO NOT EDIT. # Linux/x86 4.18.0 K 阅读全文
posted @ 2023-09-23 20:03 dolinux 阅读(475) 评论(0) 推荐(0)
摘要: 在linux上一般通过dmidecode来获取DMI信息,crash也提供了获取DMI信息的命令,不过内容不会像dmidecode那么详细。 crash> sys -i DMI_BIOS_VENDOR: SeaBIOS DMI_BIOS_VERSION: rel-1.14.0-0-g155821a1 阅读全文
posted @ 2023-09-23 17:59 dolinux 阅读(115) 评论(0) 推荐(0)
摘要: 使用crash工具根据地址查看结构体的内容时,有时需要输入struct或者union,多少有些繁琐,crash提供了*命令,直接跟在结构体或者联合体的名字的前面即可。 示例: 带struct crash> struct kmem_cache -x ffff893751f60800 struct km 阅读全文
posted @ 2023-09-23 17:36 dolinux 阅读(152) 评论(0) 推荐(0)
摘要: 作者 pengdonglin137@163.com 查看percpu变量在每个cpu上的基地址 crash> kmem -o PER-CPU OFFSET VALUES: CPU 0: ffff88807f600000 CPU 1: ffff88807fa00000 CPU 2: ffff88813 阅读全文
posted @ 2023-09-23 16:59 dolinux 阅读(1290) 评论(0) 推荐(0)