自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(82)
  • 收藏
  • 关注

原创 rt-linux里的泛rtmutex锁的调用链整体分析

rt-linux里的泛rtmutex锁的调用链整体分析,rtmutex核心,rt-linux,rt_mutex,rwsem,rt读写锁,spin_lock,rt_spin_lock

2025-05-25 23:46:35 1201

原创 cgroup进行限额的逻辑场景之put_prev_entity及dequeue_entity

cgroup进行限额的逻辑场景之put_prev_entity及dequeue_entity,cgroup,put_prev_entity,dequeue_entity,__schedule,SM_MASK_PREEMPT

2025-05-25 00:55:23 1371

原创 调度关键路径里调整优先级导致hardlockup

调度关键路径里调整优先级导致hardlockup,rq lock,hardlockup,死锁,定制tasklet,软中断

2025-05-23 15:30:22 1351

原创 rt-linux下的底层锁依赖因cgroup cpu功能导致不相干进程的高时延问题

rt-linux下的底层锁依赖因cgroup cpu功能导致不相干进程的高时延问题,rt-linux,cgroup cpu,throttle,spinlock,mutex,rwsem,lazy-preempt,回用户态再限额

2025-05-22 23:19:44 1105

原创 tasklet上下文内存分配触发might_alloc检查及同步回收调用链

tasklet上下文内存分配触发might_alloc检查及同步回收调用链,tasklet,might_alloc,内存分配,直接内存回收,slab,slob,slub,kmalloc到直接内存回收的完整调用链

2025-05-22 21:12:08 1152

原创 用户栈的高效解析逻辑

用户栈的高效解析逻辑,upper_bound,lambda表达式,vdso符号表,vsyscall符号表

2025-05-21 23:55:19 1158 2

原创 内核逻辑里抓取用户栈的几种方法

内核逻辑里抓取用户栈的几种方法,perf_callchain_user,stack_trace_save_user,stacktrace,userstacktrace,sym-userobj,arch_stack_walk_user,seq_print_user_ip

2025-05-21 00:33:42 1200

原创 内核态函数strlcpy及strscpy以及用户态函数strncpy

内核态函数strlcpy及strscpy以及用户态函数strncpy,strlcpy,strscpy,strncpy,CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS

2025-05-08 14:32:35 1387

原创 rt-linux下的cgroup cpu的死锁bug

rt-linux下的cgroup cpu的死锁bug,rt-linux,优先级继承,cgroup,死锁,cgroup period timer,ktimer,rt-linux下的hrtimer

2025-04-27 23:27:06 2085 2

原创 rt-linux下的D状态的堆栈抓取及TASK_RTLOCK_WAIT状态

rt-linux下的D状态的堆栈抓取及TASK_RTLOCK_WAIT状态,rt-linux,TASK_UNINTERRUPTIBLE,D状态,TASK_RTLOCK_WAIT,rtmutex,spinlock_rt,arm64

2025-04-27 19:51:20 1804

原创 madvise MADV_FREE对文件页统计的影响及原理

madvise MADV_FREE对文件页统计的影响及原理,Mapped,AnonPages,Inactive(file),/proc/meminfo,free -h

2025-04-27 15:44:21 1337

原创 cgroup sched_cfs_bandwidth_slice参数的作用及效果

cgroup sched_cfs_bandwidth_slice参数的作用及效果,sched_cfs_bandwidth_slice,cgroup cpu,runtime_remaining,task_group,cfs_bandwidth

2025-04-25 23:55:51 1327

原创 借助内核逻辑锁pagecache到内存

借助内核逻辑锁pagecache到内存,mlock,mmap,munmap,find_get_page,read_cache_page_gfp,MAP_PRIVATE,MAP_SHARED

2025-04-25 16:35:07 1361

原创 cgroup threaded功能例子

cgroup threaded功能例子,cgroup,threaded模式

2025-04-21 17:53:17 1326

原创 vdso内核与glibc配合的相关逻辑分析

vdso内核与glibc配合的相关逻辑分析,auxv,AT_SYSINFO_EHDR,create_elf_tables,load_elf_binary,setup_vdso,setup_vdso_pointers,GLRO(dl_auxv),execve

2025-04-21 13:18:24 1437

原创 tmpfs的监控筛选/dev/shm下的shmem创建

tmpfs的监控筛选/dev/shm下的shmem创建,tmpfs,/dev/shm,shmem,mnt_mountpoint

2025-04-14 23:24:17 1548

原创 vdso概念及原理,vdso_fault缺页异常,vdso符号的获取

vdso概念及原理,vdso_fault缺页异常,vdso符号的获取,缺页异常,vmf_insert_pfn,get_page,vm_insert_page,vvar_fault,_install_special_mapping,execve,vvar

2025-04-14 00:03:49 1439

原创 获取内存内容的几种方法

获取内存内容的几种方法,远程进程用户空间内容获取,内核空间内容获取,vdso,vsyscall,/proc/kcore

2025-04-09 09:36:35 1465

原创 获取inode的完整路径包含挂载的路径

获取inode的完整路径包含挂载的路径,inode,dentry,super_block,dentry_path_raw,struct mount

2025-04-05 23:20:05 1535

原创 关于inode,dentry结合软链接及硬链接的实验

关于inode,dentry结合软链接及硬链接的实验,inode,dentry,硬链接,软链接,软链接内核实现

2025-04-03 23:50:11 1428

原创 缺页异常导致的iowait打印出相关文件的绝对路径

缺页异常导致的iowait打印出相关文件的绝对路径,folio,filemap_fault,缺页异常,文件系统,dentry,inode,super_block,folio_wait_bit_common

2025-04-03 17:04:26 1508

原创 cgroup父子进程的加组实验

cgroup父子进程的加组实验,cgroup,父子进程,system

2025-04-02 22:58:38 1302

原创 分析sys高问题的方法总结

分析sys高问题的方法总结,bpftrace,execsnoop-bpfcc,perf top,pidstat,ps -eo,top -b -d,trace,perfetto

2025-04-02 19:44:08 1426

原创 增加等IO状态的唤醒堆栈打印及缺页异常导致iowait分析

增加等IO状态的唤醒堆栈打印及缺页异常导致iowait分析,iowait,iodelay,PG_locked,filemap_fault,缺页异常,TASK_KILLABLE

2025-04-01 21:54:28 1368

原创 cpu的iowait指标解释及示例

cpu的iowait指标,in_iowait,nr_iowait,iowait高的场景,top里的idle

2025-04-01 15:18:24 1373

原创 在计算进程D状态持续时间及等IO的时间遇到的一处问题

进程D状态事件抓取,进程等IO事件抓取,rq_clock_task,任务迁移

2025-03-24 23:47:25 1312

原创 cgroup cpu相关的基础概念及相关内核逻辑的耗时测试

cgroup cpu相关的基础概念,cgroup内核逻辑耗时测试,weight,throttle,CONFIG_SCHED_CORE

2025-03-24 08:39:47 1421

原创 内核static_branch_likely、likely及inline相关优化实验

static_branch_likely,static_branch_unlikely,likely,unlikely,分支预测,inline,icache

2025-03-20 11:01:25 1427

原创 /proc/<pid>/下的节点的读取及相关内核逻辑分析及getrusage

/proc/<pid>/stat,getrusage,utime,stime,cutime,cstime,gtime,cgtime,task_struct->signal,PF_VCPU,task_struct引用技术,get_task_struct

2025-03-14 17:33:06 1410

原创 关于stac和clac的进一步细节及EFLAGS

关于stac和clac的进一步细节及EFLAGS,SMAP,stac,clac,EFLAGS,EFLAGS.AC

2025-03-13 17:45:00 1427

原创 剔除中断和调度影响的耗时测量方法

剔除中断和调度影响的耗时测量方法,调度影响,中断影响,耗时统计,中断统计

2025-03-07 15:57:05 1432

原创 观测指定内存上是否被读写,若触发条件打印调用栈

内存读写检测,数据断点,databreakpoint,watchpoint,memfd

2025-03-03 02:52:01 1478

原创 jemalloc 5.3.0的关键流程总结及细节补充

jemalloc 5.3.0的关键流程总结及细节补充,ncached_max,hpa及pac,extent_alloc_retained,tcache的fill逻辑

2025-02-24 03:08:25 3194

原创 jemalloc 5.3.0里的快速路径分配逻辑及可借鉴的高性能编程思路

jemalloc 5.3.0里的快速路径分配逻辑及可借鉴的高性能编程思路,快速路径,tcache bin,stack_head,low_bits_low_water,low_bits_empty,高性能编程思路

2025-02-21 17:48:11 1474

原创 jemalloc 5.3.0的arena概念及arena的选择逻辑分析

jemalloc 5.3.0的arena概念及arena的选择逻辑分析,jemalloc里的arena概念,arena的选择逻辑,arena_choose_hard,binshard

2025-02-19 01:16:34 1484

原创 非侵入式观测进程里的某个线程的tls数据

非侵入式观测进程里的某个线程的tls数据,pin_user_pages_remote,fsbase,glibc的tls机制,thread_local,非侵入式观测

2025-02-15 23:35:10 1320

原创 jemalloc 5.3.0的base模块的源码详细分析及调用链使用场景的详细分析

jemalloc 5.3.0的base模块的源码及调用链使用场景的详细分析,base分配器,base_alloc,base和arena的关系,base分配了哪些元数据,jemalloc里其他分配器

2025-02-15 00:01:15 1353

原创 由jemalloc 5.3.0初始化时的内存分配的分析引入jemalloc的三个关键概念及可借鉴的高性能编码技巧

jemalloc 5.3.0初始化时的内存分配的分析,jemalloc的三个关键概念,借鉴jemalloc代码,高性能编码技巧

2025-02-12 01:06:49 1443

原创 jemalloc的malloc案例来分析GOT表和PLT表有关流程

jemalloc的malloc案例来分析GOT表和PLT表,main之前的malloc分析,rip寄存器,glibc,_dl_runtime_resolve,_dl_fixup

2025-02-10 11:06:59 1439

原创 跟踪jemalloc 5.3.0的第一次malloc的源头原因及jemalloc相关初始化细节拓展

跟踪jemalloc 5.3.0的第一次malloc的源头原因及jemalloc相关初始化细节拓展,72704,glibc单步调试,gcc源码反汇编分析,jemalloc的初始化流程,malloc_init_hard,tsd_fetch_slow,tcache的bins,__attribute__ ((constructor))

2025-02-10 00:07:46 1409

rcu链表的使用例子,包含一定的注释

rcu链表的使用例子,包含一定的注释 rcu的原理见 https://zhaoxin1989.blog.csdn.net/article/details/144137746?spm=1001.2014.3001.5502

2025-03-22

rcu的使用例子程序,rcu-dereference,rcu-read-lock

rcu的使用例子程序,rcu_dereference,rcu_read_lock,详细的rcu介绍见 https://zhaoxin1989.blog.csdn.net/article/details/144137746?spm=1001.2014.3001.5502 rcu的实例、注意事项及原理讲解

2025-03-21

yolov5的n平台下的源码片段,只需关注源码里的yolov5部分即可

yolov5的n平台下的源码片段,只需关注源码里的yolov5部分即可

2025-03-21

seqlock在nmi handler里的误用可能会引起系统死锁的例子

seqlock在nmi handler里的误用可能会引起系统死锁的例子

2025-03-21

之前面试别的做底层开发的候选人时候,问的一些面试问题,相对比较基本的一些

之前面试别的做底层开发的候选人时候,问的一些面试问题,相对比较基本的一些

2025-03-21

与图像识别图形处理相关的gpu的格式转换的库,cuda相关

与图像识别图形处理相关的gpu的格式转换的库,cuda相关

2025-03-21

libunwind源码

libunwind的源码,方便不方便下载到源码的同学,相关链接 git clone https://github.com/libunwind/libunwind.git

2025-03-04

memfd+databreak组合例程,memfd的内容里包含用于memfd的跨进程fd转换的内核ko,databreak的内容里包含内核数据内存读写的检测,指定进程的用户态数据的数据读写的检测

memfd是一个非常推崇的一个共享内存机制,可用于基于此设计相对较为安全的跨进程数据共享机制。 使用memfd来验证一个数据断点功能,虽说是数据断点,但是在我们提供的例程里并不需要断点下来,提供的是内存数据读写的检测,分为两个方面,一个方面是内核态数据的读写的检测,另一个是指定进程的用户态数据的读写的检测 另外,databreak里的部分还包含通过pin_user_pages_remote程序进行物理也的pin和获取对应的内核虚拟地址的逻辑部分。 memfd+databreak组合例程,memfd的内容里包含用于memfd的跨进程fd转换的内核ko,databreak的内容里包含内核数据内存变化的检测,指定进程的用户态数据的数据变化的检测

2025-03-02

使用C++ thread-local修饰符的例子,及获取其相对于fsbase的偏移值

使用C++ thread_local修饰符的例子,及获取其相对于fsbase的偏移值 使用build.sh的脚本来编译使用C++ thread_local修饰符的例程, 然后脚本会把源代码里的threadStatus的这个thread_local变量相对于 fsbase的偏移值给打出来,方便用ko模块去读取该变量的值,参考博客 https://blog.csdn.net/weixin_42766184/article/details/145473553?spm=1001.2014.3001.5501 博客标题:非侵入式观测进程里的某个线程的tls数据

2025-03-10

armv8架构体系结构的基础知识的思维导图,有mindmanager21的原图,加上导出的html5格式的图及csv格式

armv8架构体系结构的基础知识的思维导图,非常大的一张图,用思维导图方式比阅读书更好理解,里面还在章节里附上了相关的补充介绍方便理解。 里面有mindmanager21的原图,加上导出的html5格式的图及csv格式

2025-02-27

jemalloc5.3.0关键步骤流程图,对之前写的若干篇jemalloc5.3.0的博客里的关键步骤进行抽象和汇总

jemalloc5.3.0关键步骤流程图,对之前写的若干篇jemalloc5.3.0的博客里的关键步骤进行抽象和汇总 流程不分平台,流程图里的具体数字基于x86平台的默认配置 可作为理解jemalloc5.3.0的大纲型导图 相关博客链接是 https://blog.csdn.net/weixin_42766184/article/details/145809789?spm=1001.2014.3001.5502 博客名:jemalloc 5.3.0的关键流程总结及细节补充

2025-02-24

jemalloc5.3.0快速路径逻辑图,涉及到tcache的逻辑,tcache bin里stack-head,low-water,empty等细节逻辑

与资源相关的我的博客的标题是“jemalloc 5.3.0里的快速路径分配逻辑及可借鉴的高性能编程思路”,链接是 https://blog.csdn.net/weixin_42766184/article/details/145617722?spm=1001.2014.3001.5502 jemalloc5.3.0快速路径逻辑图,涉及到tcache的逻辑,tcache bin里stack_head,low_water,empty等细节逻辑 阅读后可以快速理解tcache的bin里的stack_head,low_water这部分的初始化逻辑,判断逻辑,及malloc和free时与之相关的细节

2025-02-21

jemalloc5.3.0的arena的选择逻辑调用链及细节的思维导图,详细分析jemalloc里的选择arena的逻辑细节及流程图

jemalloc5.3.0的资料非常少,代码细节分析及流程图非常少,可参考此资料了解jemalloc5.3.0版本里一个非常重要的概念或者说模块arena。 jemalloc5.3.0的arena的选择逻辑调用链及细节的思维导图,详细分析jemalloc里的选择arena的逻辑细节及流程图 与这份资料对应的博客是 “jemalloc 5.3.0的arena概念及arena的选择逻辑分析” 链接是 https://blog.csdn.net/weixin_42766184/article/details/145622558?sharetype=blogdetail&sharerId=145622558&sharerefer=PC&sharesource=weixin_42766184&spm=1011.2480.3001.8118

2025-02-18

jemalloc5.3.0里malloc-init-hard时的所有的内存分配调用链

jemalloc5.3.0里malloc_init_hard时的所有的内存分配调用链,用于理清jemalloc5.3.0里的base模块和相关内存分配调用链及调用场景细节 对应的博文搜索我的博文,标题是“jemalloc 5.3.0的base模块的源码及调用链使用场景的详细分析”

2025-02-14

rcu-stall及rcu的一些整理,自己之前经常反复看一眼,最后才能牢记于心

比较碎的一些整理,但是都是需要牢记的关键信息,之前的博客里也贴出过相关思维导图的截图,相关的我的博客的文章名字是“内核模块里获取当前进程和父进程的cmdline的方法及注意事项,涉及父子进程管理,和rcu的初步介绍” 思维导图用的mindmanager来画的,但是也导出成了html5的格式可不依赖软件环境来阅读 关于rcu,我有一篇比较详细的整理,可以看我的博客里文章名字是“rcu的实例、注意事项及原理讲解”的博客。 关于思维导图里提到的顺序锁,我也有一篇博客详细介绍,文章名字是“顺序锁的原理和使用注意事项” 另外,后面会对于之前遇到的一个rcu stall问题做博客分享,敬请关注。

2025-02-12

CFS调度器当初学习时的笔记,属于学习过程中的中间产物

CFS调度器当初学习时的笔记,属于学习过程中的中间产物,用思维导图软件mindmanager来画的,相比该CFS话题别的中间产物相对好一些,所以上传做个记录,整理后的博文见我的博客里,搜索“CFS及RT调度整体介绍”或者CFS即可。 资源里有原始的mindmanager的文件,也有导出成html5的文件,html5文件没有安装软件限制

2025-02-09

jemalloc5.3.0内存分配顶层几级调用链流程图,jemalloc5.3.0的网上资料非常匮乏,加上jemalloc的新版本如5.3.0版本和之前的历代版本差异都非常大,流程图持续完善中

jemalloc5.3.0内存分配顶层几级调用链流程图,jemalloc5.3.0的网上资料非常匮乏,加上jemalloc的新版本如5.3.0版本和之前的历代版本差异都非常大,流程图持续完善中 该图除了涉及jemalloc的顶层几级调用链流程图以外,还涉及了tsd模块,之前的博客里有介绍 https://blog.csdn.net/weixin_42766184/article/details/145384811?spm=1001.2014.3001.5502。

2025-02-08

arm64平台常用的deb包汇总

arm64平台相比x86平台,其配套生态不够完善,相关软件不方便安装,deb包资源有些也比较难找,汇总了常用的deb包资源,节省大家找arm64平台deb包资源的时间,常用软件方便安装

2025-02-07

arm相关电子书书名列表

都是重要的资源,分享出来,同时也为了个人记录留存

2025-02-07

下载intel的x86-64架构的手册链接

服务器常用的x86_64架构的相关芯片手册下载地址,重要的资源,标记一下

2025-02-07

模拟rt-linux上进锁后被cgroup限额的例子

模拟rt-linux上进锁后被cgroup限额的例子

2025-05-25

设置cpu固定频率及测试cpu频率波动的demo程序

设置cpu固定频率及测试cpu频率波动的demo程序

2025-05-25

cgroup限额场景调试dequeue-entity的demo程序

cgroup限额场景调试dequeue_entity的demo程序

2025-05-25

quickack的测试程序及通过kprobe去临时forcequickack

quickack的测试程序及通过kprobe去临时forcequickack

2025-05-24

D状态任务的测试程序,包含如何唤醒D状态的任务

D状态任务的测试程序,包含如何唤醒D状态的任务

2025-05-24

用于复现rt-linux的cgroupbug的测试程序

用于复现rt-linux的cgroupbug的测试程序

2025-05-24

获取rq的clock-task数值,通过runqueues这个export symbol来拿到

获取rq的clock_task数值,通过runqueues这个export symbol来拿到

2025-05-24

设置进程为子收尸者的demo程序,通过fork场景

设置进程为子收尸者的demo程序,通过fork场景

2025-05-24

观测内核抢占标志位状态的demo程序,使用spinlock场景进行测试

观测内核抢占标志位状态的demo程序,使用spinlock场景进行测试

2025-05-24

内核pin方式观测一个程序的数值的demo程序

内核pin方式观测一个程序的数值的demo程序

2025-05-24

memcpy的汇编优化例子,利用SIMD思想

memcpy的汇编优化例子,利用SIMD思想

2025-05-24

内核锁pagecache的打通demo例子

内核锁pagecache的打通demo例子

2025-05-24

分支优化的不同方式的demo测试对比,包含精准的时间测量策略

分支优化的不同方式的demo测试对比,包含精准的时间测量策略

2025-05-24

MADV-FREE的例程,用于观测INACTIVE-FILE和ACTIVE-FILE的内存统计数据变化

MADV_FREE的例程,用于观测INACTIVE_FILE和ACTIVE_FILE的内存统计数据变化

2025-05-24

内核work的使用例子

内核work的使用例子

2025-05-24

cgroup的thread模式的demo

cgroup的thread模式的demo

2025-05-24

ftrace例子包含userstack抓取

ftrace例子包含userstack抓取

2025-05-24

内核里打印用户栈demo模块

内核里打印用户栈demo模块 相关的博客标题:内核逻辑里抓取用户栈的几种方法 博客链接:https://zhaoxin1989.blog.csdn.net/article/details/144267241?spm=1001.2014.3001.5502

2025-05-24

rt-linux的锁的调用链图

rt-linux的锁的调用链图

2025-05-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除