[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fOMRbHMDwjPqEINFHjtAp36l0zrImKH7MP3DPZA1Fjqg":3},[4,15,24,31,41,49],{"slug":5,"title":6,"description":7,"pub_date":8,"tags":9,"draft":14},"linux-kernel-skeleton-struct-funcptr-container_of","Linux 内核骨架：struct、函数指针与 container_of","读懂 Linux 内核源码的三件套：巨大的 struct 组合代替继承、函数指针表实现虚派发、container_of 宏从嵌入成员找回完整对象。","2026-05-09",[10,11,12,13],"linux","kernel","C","container_of",false,{"slug":16,"title":17,"description":18,"pub_date":19,"tags":20,"draft":14},"linux-performance-tuning","Linux 性能调优实战：从 top 到 perf 的完整工具链","遇到性能问题不知道从哪下手？这篇建立系统化的排查思路，从 CPU\u002F内存\u002FIO\u002F网络逐层分析。","2026-05-03",[10,21,22,23],"性能","运维","系统编程",{"slug":25,"title":26,"description":27,"pub_date":19,"tags":28,"draft":14},"docker-practical-guide","Docker 实战：从会用到用好","会 docker run 不够，Dockerfile 最佳实践、多阶段构建、Compose 编排、镜像瘦身才是日常真正需要的。",[29,10,30],"docker","工程实践",{"slug":32,"title":33,"description":34,"pub_date":35,"tags":36,"draft":14},"hid-hotplug","HID 设备热插拔检测：从 udev 到 node-hid","在 Linux 上用 node-hid + usb 库实现可靠的 USB HID 设备热插拔检测，踩坑记录","2026-04-28",[37,38,10,39,40],"cpp","hid","nodejs","electron",{"slug":42,"title":43,"description":44,"pub_date":45,"tags":46,"draft":14},"git-out-of-memory","解决 git 报错：Fatal: Out of memory, malloc failed","分析 git 大仓库操作时出现 Out of memory malloc failed 的根本原因，通过调整 pack.windowMemory、http.postBuffer 和 git repack 彻底解决。","2024-01-31",[47,10,48],"git","工具",{"slug":50,"title":51,"description":52,"pub_date":53,"tags":54,"draft":14},"vmware-tools-install","在 VMware 虚拟机中安装 open-vm-tools 完整指南","详解 VMware Tools 的作用、open-vm-tools 与官方 VMware Tools 的区别，以及在 Ubuntu 虚拟机中安装并生效的完整步骤和常见问题排查。","2023-11-21",[55,10,56,57],"VMware","Ubuntu","虚拟机"]