摘要:        
参考 https://gitlab.com/procps-ng/procps 问题 在使用free命令时发现,free命令输出的buff/cache跟从/proc/meminfo里看到的并不相同,这是为什么呢? free命令的输出 root@ubuntu-vm:~# free total used     
阅读全文
 
 
        
        posted @ 2022-08-09 22:08
dolinux
阅读(1017)
推荐(0)
        
            
        
        
摘要:        
参考 https://docs.kernel.org/core-api/wrappers/atomic_t.html 说明 下面注释里说的自增和自减表示的是在原子变量旧值的基础上 这里列举的原子操作是以32位为例的,如果是64位,那么把前缀atomic替换成atomic64即可 数据类型 原型 说明    
阅读全文
 
 
        
        posted @ 2022-08-09 15:33
dolinux
阅读(2437)
推荐(1)
        
 
		
    
        
        
摘要:        
技术博客 Hello 算法 二叉树 二叉树的前中后序遍历    
阅读全文
 
 
        
        posted @ 2022-08-04 18:32
dolinux
阅读(76)
推荐(0)
        
 
		
    
        
        
摘要:        
云计算 https://space.bilibili.com/14871346 极术社区:Arm服务器专栏 RAS 内存 edac-utils APEI Error INJection 服务器知识 硬件 光纤网卡、HBA卡和RAID卡的区别 记录:FC-SAN与IP-SAN比较 光纤网卡和服务器HB    
阅读全文
 
 
        
        posted @ 2022-07-31 19:40
dolinux
阅读(174)
推荐(0)
        
 
		
    
        
        
摘要:        
论文 Storage Systems topics and related papers Storage System and File System Courses Linux I/O栈 Linux内核的I/O栈大图 知乎Linux I/O专栏1 Linux 块设备之Block Layer层架构演    
阅读全文
 
 
        
        posted @ 2022-07-27 16:44
dolinux
阅读(843)
推荐(0)
        
 
		
    
        
        
摘要:        
参考 最牛B的Linux Shell命令 杂项 ssh免密登录 ssh-copy-id remote-machine 比如 ssh-copy-id pengdl@localhost -p 8765 这个命令把当前用户的公钥串写入到远程主机的~/.ssh/authorized_keys内,这样下次使用    
阅读全文
 
 
        
        posted @ 2022-07-12 14:45
dolinux
阅读(156)
推荐(0)
        
 
		
    
        
        
摘要:        
技术博客 https://blog.csdn.net/dog250 Linux操作系统学习笔记(二十二)网络通信之发包 Linux操作系统学习笔记(二十三)网络通信之收包 理解 Linux 网络栈(1):Linux 网络协议栈简单总结 Linux内核网络中数据报在协议层的处理 LINUX网络子系统中    
阅读全文
 
 
        
        posted @ 2022-06-30 17:47
dolinux
阅读(368)
推荐(0)
        
 
		
    
        
        
摘要:        
参考 https://zhuanlan.zhihu.com/p/96001673 插件 ELF.bt 用来分析ELF文件,用起来感觉像wireshark,可以高亮源文件中正常查看的字段。 安装方法:Templates → Template Repository 也可以不用搜索,在左边一栏可以看到当前    
阅读全文
 
 
        
        posted @ 2022-06-20 15:22
dolinux
阅读(326)
推荐(0)
        
 
		
    
        
        
摘要:        
工具 sg_utils Storage and SCSI tools https://github.com/hreinecke/sg3_utils https://sg.danny.cz/scsi/lsscsi.html 调试节点 /proc/scsi /sys/class/scsi_host /s    
阅读全文
 
 
        
        posted @ 2022-06-16 21:03
dolinux
阅读(114)
推荐(0)
        
 
		
    
        
        
摘要:        
参考 https://blog.csdn.net/rikeyone/category_10354155.html Linux内核故障分类和排查 Linux内核中oops 错误解析以及问题定位 panic和oops的区别 内核问题分析文章 Linux中的错误码 Remote Serial Consol    
阅读全文
 
 
        
        posted @ 2022-06-12 09:24
dolinux
阅读(767)
推荐(0)
        
 
		
    
        
        
摘要:        
参考 Linux mem 2.8 Kfence 详解 Linux 内核调测中最最让开发者头疼的 bug 有解了 让人头疼的“内核内存被改”和“内存泄露”怎么解? 内核内存错误检测工具KFENCE 作者 pengdonglin137@163.com 内核版本 linux-5.14 实现分析 Kfenc    
阅读全文
 
 
        
        posted @ 2022-06-04 22:02
dolinux
阅读(913)
推荐(1)
        
 
		
    
        
        
摘要:        
参考:https://crash-utility.github.io/help_pages/mod.html 用法: 加载指定内核模块的符号 mod -s <模块名字> <模块的ko文件路径> 如果没有传递文件路径,那么会在/lib/modules/中搜索 如果想强制指定内核模块的搜索路径,并且加载    
阅读全文
 
 
        
        posted @ 2022-05-31 22:13
dolinux
阅读(1068)
推荐(0)
        
            
        
        
摘要:        
参考:https://crash-utility.github.io/help_pages/sym.html 用法: 查看系统中所有的全局符号及其地址 sym -l 对于percpu类型的,那么显示的时偏移量,可以使用 p <offset or sym>:0,2-3 查看系统中所有内核模块中的符号     
阅读全文
 
 
        
        posted @ 2022-05-31 21:52
dolinux
阅读(348)
推荐(0)
        
            
        
        
摘要:        
参考:https://crash-utility.github.io/help_pages/waitq.html 用法: 查看等待队列中被阻塞的进程 waitq <等待队列地址> 这里的等待队列的数据类型是 wait_queue_head 等待队列地址的表达方式有三种: wait_queue_hea    
阅读全文
 
 
        
        posted @ 2022-05-31 21:23
dolinux
阅读(177)
推荐(0)
        
            
        
        
摘要:        
参考:https://crash-utility.github.io/help_pages/wr.html 用法: 需要具备对/dev/mem设备节点的写权限。 写某个地址,默认数据类型为long wr <内核地址 或 符号> <数值> 如果是用户地址,那么用wr -u 如果是内核地址,可以使用wr    
阅读全文
 
 
        
        posted @ 2022-05-31 20:44
dolinux
阅读(218)
推荐(0)
        
            
        
        
摘要:        
参考: https://crash-utility.github.io/help_pages/rd.html 用法: 读取内核虚地址地址或者内核符号的值,默认16进制显示,类型为unsigned long,并且会将值对应的ascii码显示出来 rd <内核地址> 或 rd <内核符号> 如果不需要将    
阅读全文
 
 
        
        posted @ 2022-05-31 20:17
dolinux
阅读(1394)
推荐(0)
        
 
		
    
        
        
摘要:        
参考:https://crash-utility.github.io/help_pages/whatis.html 用法: 查看内核内核符号或者数据类型的详细定义 whatis <数据类型> 或 whatis <内核符号> 查看内核数据类型内部成员的偏移 whatis -o <数据类型> 列出内核里    
阅读全文
 
 
        
        posted @ 2022-05-29 10:55
dolinux
阅读(188)
推荐(0)
        
            
        
        
摘要:        
参考:https://crash-utility.github.io/help_pages/foreach.html 用法: 在所有的进程上执行命令 这里的命令支持如下: | 命令 | 可选参数 | 用途 | | : : | : : | : : | | bt | -r -t -l -e -R -f     
阅读全文
 
 
        
        posted @ 2022-05-29 09:58
dolinux
阅读(608)
推荐(0)
        
            
        
        
摘要:        
参考:https://crash-utility.github.io/help_pages/p.html 用法: 查看内核中的一些全局符号的内容 p <符号名> 如果要查看的符号是一个percpu类型的,那么会显示这个percpu变量在每个cpu上的地址,如果想要查看在具体某个cpu上这个percp    
阅读全文
 
 
        
        posted @ 2022-05-29 09:50
dolinux
阅读(396)
推荐(0)
        
            
        
        
摘要:        
参考:https://crash-utility.github.io/help_pages/ascii.html 用法: 将一串16进制数转换为对应的ascii码: ascii <value>    
阅读全文
 
 
        
        posted @ 2022-05-29 00:02
dolinux
阅读(117)
推荐(0)
        
 
		
    
        
        
摘要:        
参考:https://crash-utility.github.io/help_pages/mount.html 用法: 查看当前被mount的文件系统信息,如mount结构体、超级块、文件系统类型、设备节点以及挂载目录 mount    
阅读全文
 
 
        
        posted @ 2022-05-28 23:58
dolinux
阅读(132)
推荐(0)
        
            
        
        
摘要:        
参考:https://crash-utility.github.io/help_pages/irq.html 用法: 查看系统所有中断的使用信息,如虚拟中断号,中断的irq_desc,注册的irqaction以及名字 irq 查看实际使用的中断的信息,去除哪些没有被申请的虚拟中断号 irq -u 查    
阅读全文
 
 
        
        posted @ 2022-05-28 23:49
dolinux
阅读(577)
推荐(0)
        
            
        
        
摘要:        
参考:https://crash-utility.github.io/help_pages/log.html 用法: 显示内核dmesg信息 log 显示内核demsg信息,将时间显示为人可读的形式,如:[Fri May 27 17:36:11 PDT 2022] log -T 显示的内核log中去    
阅读全文
 
 
        
        posted @ 2022-05-28 23:39
dolinux
阅读(135)
推荐(0)
        
            
        
        
摘要:        
参考:https://crash-utility.github.io/help_pages/dev.html 用法: 显示设备节点对应内核地址、操作函数 dev 显示IO端口的使用信息 dev -i 显示PCI设备数据 dev -p 显示磁盘IO统计信息 dev -d    
阅读全文
 
 
        
        posted @ 2022-05-28 23:25
dolinux
阅读(221)
推荐(0)
        
            
        
        
摘要:        
参考:https://crash-utility.github.io/help_pages/repeat.html 用法: 周期性执行某个命令 repeat -seconds cmd 比如: repeat -1 p jiffies : 一秒执行一次p jiffies    
阅读全文
 
 
        
        posted @ 2022-05-28 23:18
dolinux
阅读(117)
推荐(0)
        
            
        
        
摘要:        
参考:https://crash-utility.github.io/help_pages/mach.html 用法: 显示机器信息,如cpu型号,内存大小,cpu个数,处理器频率,页大小,HZ以及内核地址空间布局 mach 显示cpuinfo结构内容,每个cpu都有一个,包含了cpu的硬件信息 m    
阅读全文
 
 
        
        posted @ 2022-05-28 23:13
dolinux
阅读(123)
推荐(0)
        
            
        
        
摘要:        
参考:https://crash-utility.github.io/help_pages/swap.html 用法: 显示交换设备的信息 swap    
阅读全文
 
 
        
        posted @ 2022-05-28 23:07
dolinux
阅读(99)
推荐(0)
        
            
        
        
摘要:        
参考:https://crash-utility.github.io/help_pages/fuser.html 用法: 查看一个文件正在被哪些进程使用,这里的文件可以是路径名,也可以是文件的inode地址 显示的信息中包含进程的pid,进程的task_struct地址,进程的名字以及使用方式 fu    
阅读全文
 
 
        
        posted @ 2022-05-28 22:57
dolinux
阅读(134)
推荐(0)
        
            
        
        
摘要:        
参考:https://crash-utility.github.io/help_pages/pte.html 用法: 翻译pte页表项 如果页表映射到物理内存,那么会显示对应的物理地址以及页表项的状态 如果是交换表项,那么会显示对应的swap设备以及偏移量 pte <pte页表项的值>    
阅读全文
 
 
        
        posted @ 2022-05-28 22:54
dolinux
阅读(203)
推荐(0)
        
            
        
        
摘要:        
参考:https://crash-utility.github.io/help_pages/ptob.html 用法: 将page物理页帧号转换为物理地址,即页帧号*页大小 ptob <页帧号> 将物理地址转换为页帧号,实际是地址除以页大小 btop <地址>    
阅读全文
 
 
        
        posted @ 2022-05-28 22:47
dolinux
阅读(214)
推荐(0)
        
            
        
        
摘要:        
参考:https://crash-utility.github.io/help_pages/vtop.html 用法: 将内核虚拟地址转换为物理地址 vtop -k <address> 将用户虚拟地址转换为物理地址 转换过程会采用类似MMU,通过查询页表来进行转换,转换过程会显示出来 对于用户虚拟地    
阅读全文
 
 
        
        posted @ 2022-05-28 22:40
dolinux
阅读(591)
推荐(0)
        
            
        
        
摘要:        
参考:https://crash-utility.github.io/help_pages/ptov.html 用法: 将物理内存地址转换为内核虚拟地址 ptov <物理地址> 将percpu偏移地址转为指定cpu上的内核虚拟地址 得到percpu地址在所有cpu上的虚拟地址:ptov <percp    
阅读全文
 
 
        
        posted @ 2022-05-28 18:01
dolinux
阅读(288)
推荐(0)
        
            
        
        
摘要:        
参考:https://crash-utility.github.io/help_pages/search.html 用法: 设置搜索的起始地址,可以配合下面的-k -u -p等使用 search -s <起始地址> 搜索内核虚拟地址空间,这个也是默认的搜索选项 search -k 搜索内核虚拟地址空    
阅读全文
 
 
        
        posted @ 2022-05-28 15:19
dolinux
阅读(737)
推荐(0)
        
 
		
    
        
        
摘要:        
参考 https://stackoverflow.com/questions/28003921/sending-file-descriptor-by-linux-socket Linux高级进程编程———在任意两个进程间传递文件描述符:使用 sendmsg 和 recvmsg 实现 linux进程间    
阅读全文
 
 
        
        posted @ 2022-05-25 22:29
dolinux
阅读(1062)
推荐(0)
        
 
		
    
        
        
摘要:        
参考: https://man7.org/linux/man-pages/man1/top.1.html NAME top top - display Linux processes SYNOPSIS top top -hv|-bcEeHiOSs1 -d secs -n max -u|U user     
阅读全文
 
 
        
        posted @ 2022-05-23 11:03
dolinux
阅读(149)
推荐(0)
        
 
		
    
        
        
摘要:        
修改某次提交的内容 比如有下面一段提交历史: 0621df5ad (qos_sched) sched: Fix sleeping in atomic context at cpu_qos_write() f169a3e0b sched: Introduce handle priority rever    
阅读全文
 
 
        
        posted @ 2022-05-09 21:11
dolinux
阅读(457)
推荐(0)
        
 
		
    
        
        
摘要:        
参考 https://gitee.com/openeuler/kernel/issues/I4EUVI 提交 4a280fac30d27ae2aff096f9f99aa12d50f83426    
阅读全文
 
 
        
        posted @ 2022-05-07 17:52
dolinux
阅读(181)
推荐(0)
        
            
        
        
摘要:        
提交信息 branch: openEuler-20.03-LTS-SP3 commit: 6174ecb523613c8ed8dcdc889d46f4c02f65b9e4 4e3f738c49f2693dba6c4be92230232869f71c16 862e230817f796b7c7cf47d    
阅读全文
 
 
        
        posted @ 2022-05-07 10:13
dolinux
阅读(97)
推荐(0)
        
            
        
        
摘要:        
参考 整理一些大厂的开源平台及github,向他们看齐... 安装、引导、启动 BIOS/UEFI https://www.cnblogs.com/pengdonglin137/p/16618789.html 百敖BIOS培训系列一:UEFI启动流程总览 UEFI原理及开发视频教程 UEFI/Leg    
阅读全文
 
 
        
        posted @ 2022-05-07 09:43
dolinux
阅读(272)
推荐(0)
        
 
		
    
        
        
摘要:        
当应用程序申请内存时,如果系统内存不足或者到达了memory cgroup设置的limit,会触发内存回收,如果还是得不到想要的数量的内存,最后会出发oom,选择一个进程杀死,释放其占用的内存。 下面通过实验来学习一下通过memory cgroup触发oom。 内核:linux-5.14 发行版:u    
阅读全文
 
 
        
        posted @ 2022-05-01 15:46
dolinux
阅读(1895)
推荐(0)