<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[C/C++]]></title><description><![CDATA[阅读|思考|产出|进步]]></description><link>https://blog.youkuaiyun.com/lianghudream</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; lianghudream]]></copyright><item><title><![CDATA[一个 .ko 的一生]]></title><link>https://blog.youkuaiyun.com/lianghudream/article/details/170248643</link><guid>https://blog.youkuaiyun.com/lianghudream/article/details/170248643</guid><author>lianghudream</author><pubDate>Sat, 07 Nov 2026 23:21:56 +0800</pubDate><description><![CDATA[ko不是可执行程序，它是一个，和.o同一个家族。它里面没有链接好的绝对地址，没有_start，没有 libc，也没有自己的栈。你不能"运行"它，只能把它。所以insmod干的事，本质上不是执行，而是把一个半成品交给内核里的一个迷你动态链接器。这个链接器要验货、选址、解析符号、打补丁（重定位）、改页表权限，最后才调用你写的那个函数。下面按时间顺序走一遍。以 x86-64、6.x 内核为准，5.x 上个别函数名和步骤有出入，但骨架一样。]]></description><category></category></item><item><title><![CDATA[Jetson Orin 启动链]]></title><link>https://blog.youkuaiyun.com/lianghudream/article/details/168979480</link><guid>https://blog.youkuaiyun.com/lianghudream/article/details/168979480</guid><author>lianghudream</author><pubDate>Sun, 25 Oct 2026 00:15:24 +0800</pubDate><description><![CDATA[本文基于NVIDIA官方L4T开发文档，完整拆解Orin系列（AGX Orin / Orin NX / Orin Nano）的冷启动全流程，明确QSPI Flash的核心角色与UEFI引导的完整逻辑，所有阶段按执行顺序分步说明。]]></description><category></category></item><item><title><![CDATA[PX4代码架构研究学习报告]]></title><link>https://blog.youkuaiyun.com/lianghudream/article/details/168031037</link><guid>https://blog.youkuaiyun.com/lianghudream/article/details/168031037</guid><author>lianghudream</author><pubDate>Thu, 15 Oct 2026 22:37:53 +0800</pubDate><description><![CDATA[先说清楚这份报告是怎么写出来的，你需要知道的前提。代码基线。报告里的结论全部来自我实际读过的源码，不是二手转述。基线是 PX4-Autopilot 的main分支，commit同期的版本状况是：最新稳定版v1.17.0于 2026-09-10 发布，main上跑的是 v1.18 之后的开发内容。这一点很重要，因为 PX4 在 2024–2026 这两年做了一轮不小的重构。你在网上看到的很多中文教程（尤其是 2019–2021 年那批）描述的架构，和今天的main已经对不上了。老教程里的说法今天main。]]></description><category></category></item><item><title><![CDATA[RK3588 连接 Intel AX200NGW 接口方案]]></title><link>https://blog.youkuaiyun.com/lianghudream/article/details/165490737</link><guid>https://blog.youkuaiyun.com/lianghudream/article/details/165490737</guid><author>lianghudream</author><pubDate>Tue, 15 Sep 2026 21:10:25 +0800</pubDate><description><![CDATA[Intel AX200NGW 的硬件接口是因此“哪种最快”的本质不是选不同类型的接口，而是。，这也是官方参考设计的标准接法，体感最快、最稳定。]]></description><category></category></item><item><title><![CDATA[Linux V4L2 子系统内核底层实现深度拆解记录]]></title><link>https://blog.youkuaiyun.com/lianghudream/article/details/164062183</link><guid>https://blog.youkuaiyun.com/lianghudream/article/details/164062183</guid><author>lianghudream</author><pubDate>Tue, 25 Aug 2026 17:55:17 +0800</pubDate><description><![CDATA[VB2_QUEUE_UNCONFIGED, // 未配置：初始状态，REQBUFS 之前VB2_QUEUE_PREPARED, // 已配置：REQBUFS 成功，buffer 已分配VB2_QUEUE_STREAMING, // 流传输中：STREAMON 成功fill:#333;important;important;fill:none;fill:none;ry:5px;ry:5px;ry:0;ry:5px;rx:0;ry:0;rx:0;ry:0;fill:#333;驱动 probe 后初始化。]]></description><category></category></item><item><title><![CDATA[VScode回归ACM模式(古法编程)配置]]></title><link>https://blog.youkuaiyun.com/lianghudream/article/details/164061576</link><guid>https://blog.youkuaiyun.com/lianghudream/article/details/164061576</guid><author>lianghudream</author><pubDate>Tue, 25 Aug 2026 17:19:42 +0800</pubDate><description><![CDATA[要有古法编程的能力， 面对AI的最后一丝掙扎， 不能废了(打脸), 主要更改settings.json。]]></description><category></category></item><item><title><![CDATA[V4L2 子系统完整架构与工作原理记录]]></title><link>https://blog.youkuaiyun.com/lianghudream/article/details/164061084</link><guid>https://blog.youkuaiyun.com/lianghudream/article/details/164061084</guid><author>lianghudream</author><pubDate>Tue, 25 Aug 2026 17:02:29 +0800</pubDate><description><![CDATA[本文基于 Linux 5.10 内核源码，从应用层到硬件层全链路拆解 V4L2 子系统，所有核心点均标注源码路径与关键函数。]]></description><category></category></item><item><title><![CDATA[rootfs 详解与裁剪优化记录]]></title><link>https://blog.youkuaiyun.com/lianghudream/article/details/163676255</link><guid>https://blog.youkuaiyun.com/lianghudream/article/details/163676255</guid><author>lianghudream</author><pubDate>Tue, 11 Aug 2026 22:16:56 +0800</pubDate><description><![CDATA[rootfs（Root File System，根文件系统）是 Linux 内核启动后挂载的第一个文件系统（挂载点为），是整个用户空间的运行根基。内核完成硬件初始化后，会挂载 rootfs 并执行其中的init进程，正式进入用户态。它包含了系统运行必需的初始化程序、命令工具、动态库、配置文件、设备节点等所有核心组件。]]></description><category></category></item><item><title><![CDATA[DMA原理、Cache一致性问题与配置]]></title><link>https://blog.youkuaiyun.com/lianghudream/article/details/163631206</link><guid>https://blog.youkuaiyun.com/lianghudream/article/details/163631206</guid><author>lianghudream</author><pubDate>Mon, 10 Aug 2026 10:50:47 +0800</pubDate><description><![CDATA[/ 1个参数表示通道请求号// 支持外设突发模式// 标记为非一致性设备。]]></description><category></category></item><item><title><![CDATA[ARM大小核架构调度原理与RK3588嵌入式配置复习]]></title><link>https://blog.youkuaiyun.com/lianghudream/article/details/163628596</link><guid>https://blog.youkuaiyun.com/lianghudream/article/details/163628596</guid><author>lianghudream</author><pubDate>Mon, 10 Aug 2026 10:14:28 +0800</pubDate><description><![CDATA[两类核心共享L3缓存与内存总线，任务可在大小核之间无缝迁移，无软件兼容性问题。]]></description><category></category></item><item><title><![CDATA[RK3588 冷启动优化分步操作指南记录]]></title><link>https://blog.youkuaiyun.com/lianghudream/article/details/163573020</link><guid>https://blog.youkuaiyun.com/lianghudream/article/details/163573020</guid><author>lianghudream</author><pubDate>Fri, 07 Aug 2026 22:27:15 +0800</pubDate><description><![CDATA[本指南完全适配, 从原厂基线38s优化至15s以内，全程按「测基线→分阶段优化→逐段验证→稳定性压测」的可落地步骤推进。]]></description><category></category></item><item><title><![CDATA[C++ 零拷贝（Zero-Copy）]]></title><link>https://blog.youkuaiyun.com/lianghudream/article/details/163572905</link><guid>https://blog.youkuaiyun.com/lianghudream/article/details/163572905</guid><author>lianghudream</author><pubDate>Fri, 07 Aug 2026 22:02:18 +0800</pubDate><description><![CDATA[狭义零拷贝：操作系统内核层面，完全消除CPU在内存间的数据搬运，所有数据传输由DMA控制器完成，CPU仅做调度，不触碰数据本身。广义零拷贝：所有减少/消除冗余数据拷贝的技术统称，涵盖内核、用户态、语言层面的优化，只要避免了不必要的数据复制，都属于零拷贝范畴。C++开发中通常兼顾两个层面：既利用系统调用实现内核级零拷贝，也通过语言特性减少应用层的冗余拷贝。语言层：优先使用移动语义、只读视图消除应用层冗余拷贝，成本最低，收益最高。用户态层：进程间大数据用共享内存，数据流场景用环形缓冲区。内核层。]]></description><category></category></item><item><title><![CDATA[Windows + Ubuntu 双系统启动故障修复]]></title><link>https://blog.youkuaiyun.com/lianghudream/article/details/163568917</link><guid>https://blog.youkuaiyun.com/lianghudream/article/details/163568917</guid><author>lianghudream</author><pubDate>Fri, 07 Aug 2026 17:15:18 +0800</pubDate><description><![CDATA[BCD损坏0xc0000225Windows无法启动↓检查EFI分区↓确认Ubuntu没有损坏↓SFC修复系统文件↓BCDBOOT重建Windows EFI↓DISM修复系统组件↓Windows恢复启动↓BIOS调整启动顺序↓Ubuntu GRUB恢复↓Windows + Ubuntu双启动恢复对于Windows + Linux 双系统 UEFI 环境组件作用存放启动文件BCDWindows启动数据库GRUBLinux启动管理器遇到问题时：不要直接重装系统。]]></description><category></category></item><item><title><![CDATA[ipcs复习总结]]></title><link>https://blog.youkuaiyun.com/lianghudream/article/details/163251208</link><guid>https://blog.youkuaiyun.com/lianghudream/article/details/163251208</guid><author>lianghudream</author><pubDate>Mon, 27 Jul 2026 21:28:39 +0800</pubDate><description><![CDATA[ipcs全称，是 Linux/Unix 系统内置的命令行工具，专门用于查询ipcs仅支持 System V IPC，（POSIX 共享内存/信号量/消息队列需通过/dev/shm等路径查看）。]]></description><category></category></item><item><title><![CDATA[RK3588 全链路 NPU/CPU/系统性能实战调优总结]]></title><link>https://blog.youkuaiyun.com/lianghudream/article/details/163249746</link><guid>https://blog.youkuaiyun.com/lianghudream/article/details/163249746</guid><author>lianghudream</author><pubDate>Mon, 27 Jul 2026 18:59:34 +0800</pubDate><description><![CDATA[（覆盖硬件原理→模块调优→瓶颈定位→量产落地全流程）做RK3588调优3年，见过太多人上来就锁CPU频率、跑个分就说优化完了，结果一上量产业务就掉链子：推理延迟抖动大、多路视频卡顿、跑半小时就降频、NPU算力连一半都跑不满。本质问题是没搞懂。本文章不讲入门级的参数罗列，只讲量产验证过的深度调优逻辑、底层原理和可直接落地的操作，覆盖CPU、NPU、DDR总线、多媒体协同、散热管控全链路。]]></description><category></category></item><item><title><![CDATA[RK3588 共享 CRTC 同显原理补充]]></title><link>https://blog.youkuaiyun.com/lianghudream/article/details/163148573</link><guid>https://blog.youkuaiyun.com/lianghudream/article/details/163148573</guid><author>lianghudream</author><pubDate>Fri, 24 Jul 2026 08:57:54 +0800</pubDate><description><![CDATA[以下会从硬件架构→驱动实现→软件模型→切换流程方向思考。]]></description><category></category></item><item><title><![CDATA[Ubuntu宿主机中的VMWare选项「可移动设备」整体灰色不可点击]]></title><link>https://blog.youkuaiyun.com/lianghudream/article/details/163084969</link><guid>https://blog.youkuaiyun.com/lianghudream/article/details/163084969</guid><author>lianghudream</author><pubDate>Tue, 21 Jul 2026 19:23:50 +0800</pubDate><description><![CDATA[在 Ubuntu 宿主机上 90% 的场景由三个核心原因导致，按概率从高到低依次排查即可解决。]]></description><category></category></item><item><title><![CDATA[RK3588 CPU绑核]]></title><link>https://blog.youkuaiyun.com/lianghudream/article/details/163050449</link><guid>https://blog.youkuaiyun.com/lianghudream/article/details/163050449</guid><author>lianghudream</author><pubDate>Mon, 20 Jul 2026 16:38:13 +0800</pubDate><description><![CDATA[rk3588 CPU 绑核以提升性能]]></description><category></category></item><item><title><![CDATA[volatile复习]]></title><link>https://blog.youkuaiyun.com/lianghudream/article/details/162108079</link><guid>https://blog.youkuaiyun.com/lianghudream/article/details/162108079</guid><author>lianghudream</author><pubDate>Thu, 18 Jun 2026 21:30:10 +0800</pubDate><description><![CDATA[/ ✅ 正确用法volatile// ✅ 正确用法 volatile uint32_t * hardware_register = reinterpret_cast < volatile uint32_t * >(0xFFFF0000);// ✅ 信号处理 volatile sig_atomic_t quit_flag = 0;// ✅ 内存映射I/O struct MemoryMappedRegs {uint32_t// ✅ 信号处理// ✅ 内存映射I/O这三道题揭示了。]]></description><category></category></item><item><title><![CDATA[海思MPP媒体处理平台架构与实践]]></title><link>https://blog.youkuaiyun.com/lianghudream/article/details/161809241</link><guid>https://blog.youkuaiyun.com/lianghudream/article/details/161809241</guid><author>lianghudream</author><pubDate>Mon, 08 Jun 2026 22:50:19 +0800</pubDate><description><![CDATA[海思MPP（Media Process Platform）是基于硬件加速的模块化媒体处理平台，采用分层设计，所有核心操作均由专用硬件完成，CPU仅负责控制和调度。fill:#333;important;important;fill:none;color:#333;color:#333;important;fill:none;fill:#333;height:1em;应用层MPP核心层驱动层硬件层摄像头Sensor麦克风喇叭显示器/HDMI音视频编解码硬件图形缩放硬件运动估计硬件。]]></description><category></category></item></channel></rss>