<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[WHMRLIU的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/WHMRLIU</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; WHMRLIU]]></copyright><item><title><![CDATA[使用 DevEco Studio 的一些笔记]]></title><link>https://blog.youkuaiyun.com/WHMRLIU/article/details/151095881</link><guid>https://blog.youkuaiyun.com/WHMRLIU/article/details/151095881</guid><author>WHMRLIU</author><pubDate>Tue, 02 Sep 2025 09:51:38 +0800</pubDate><description><![CDATA[本文是持续更新的DevEco Studio问题解决记录。主要记录了使用Node-API实现跨语言交互开发时遇到的安装失败问题：错误代码9568347，提示&quot;install parse native so failed&quot;。解决方法是在工程级build-profile.json5文件的buildOption配置中添加externalNativeOptions字段，特别是指定abiFilters参数（需包含x86_64以兼容模拟器）。该问题源于IDE自动生成的配置文件中缺少必要的ABI编译环境]]></description><category></category></item><item><title><![CDATA[KVM模块新建 Windows11虚拟机方法 补充]]></title><link>https://blog.youkuaiyun.com/WHMRLIU/article/details/150002750</link><guid>https://blog.youkuaiyun.com/WHMRLIU/article/details/150002750</guid><author>WHMRLIU</author><pubDate>Thu, 07 Aug 2025 14:48:20 +0800</pubDate><description><![CDATA[本文记录了将Windows 11虚拟机系统盘从SATA更改为Virtio类型的优化过程。作者发现直接安装会报错，于是采用变通方案：保留原SATA硬盘作为欺骗安装程序，同时添加Virtio硬盘，在安装界面加载驱动后选择新硬盘安装系统。此外，还将网卡从E1000改为Virtio以降低CPU开销，显卡从QXL改为Virtio提升图形性能并解决分辨率问题。虽然主观感觉更流畅，但作者认为需要后续数据验证性能提升效果。]]></description><category></category></item><item><title><![CDATA[KVM模块新建Windows11虚拟机方法]]></title><link>https://blog.youkuaiyun.com/WHMRLIU/article/details/149935264</link><guid>https://blog.youkuaiyun.com/WHMRLIU/article/details/149935264</guid><author>WHMRLIU</author><pubDate>Tue, 05 Aug 2025 15:54:30 +0800</pubDate><description><![CDATA[本文介绍了在Debian 12系统上使用KVM安装Windows 11的解决方案。针对Windows 11强制要求的TPM 2.0和Secure Boot特性，作者尝试了多种方法后最终通过两种方式实现：1) 安装swtpm-tools后添加TPM设备（型号TIS 2.0），同时使用virtio驱动（需提前下载virtio-win-0.1.271.iso等文件），安装时注意勾选&quot;安装前修改配置&quot;并正确设置网卡/显卡为Virtio；2) 更简单的方法是直接添加TPM设备并设置为&quot;直]]></description><category></category></item><item><title><![CDATA[tc分析网络数据包的程序源码 修改调试随笔 总结（五）]]></title><link>https://blog.youkuaiyun.com/WHMRLIU/article/details/148863350</link><guid>https://blog.youkuaiyun.com/WHMRLIU/article/details/148863350</guid><author>WHMRLIU</author><pubDate>Tue, 24 Jun 2025 12:35:53 +0800</pubDate><description><![CDATA[这是一篇关于BPF程序开发的技术总结，作者分享了自己在开发过程中遇到的几个关键问题和解决方案： RINGBUF大小设置：建议根据应用场景确定，举例说明如何计算4MB的缓冲区大小。 轮询机制选择：解释了用epoll+多线程替代poll的原因，包括性能优化和扩展性考虑。 结构体对齐问题：详细说明了pkt_event.h头文件的设计考虑，包括内存对齐、完整性校验等，并附上完整代码。 调试技巧：提供了通过bpf_ringbuf_query()监控缓冲区使用情况的代码示例。 设计理念：阐述了结构体设计的严谨性考虑，包]]></description><category></category></item><item><title><![CDATA[tc分析网络数据包的程序源码 修改调试随笔 总结（四）]]></title><link>https://blog.youkuaiyun.com/WHMRLIU/article/details/148845708</link><guid>https://blog.youkuaiyun.com/WHMRLIU/article/details/148845708</guid><author>WHMRLIU</author><pubDate>Mon, 23 Jun 2025 15:05:57 +0800</pubDate><description><![CDATA[摘要：本文针对BPF程序数据处理中的性能瓶颈进行了多线程优化设计。通过将回调函数简化为仅执行队列推送，将I/O操作卸载到独立线程，实现了处理并行化。采用带锁任务队列保证线程安全，epoll_wait实现高效事件驱动，分离生产者/消费者队列避免竞争。优化后测试显示：CPU利用率仅0%，内存占用13MB，无磁盘I/O缺页，实现了零任务遗留的干净退出。主要优化点包括：1）批处理消费提升吞吐；2）队列分离减少锁竞争；3）增强错误统计和序号检查；4）统一上下文管理。这些改进显著提升了系统稳定性、资源利用率和可维护性。]]></description><category></category></item><item><title><![CDATA[tc分析网络数据包的程序源码 修改调试随笔 总结（三）]]></title><link>https://blog.youkuaiyun.com/WHMRLIU/article/details/148714651</link><guid>https://blog.youkuaiyun.com/WHMRLIU/article/details/148714651</guid><author>WHMRLIU</author><pubDate>Wed, 18 Jun 2025 14:53:20 +0800</pubDate><description><![CDATA[本文探讨了eBPF内核层代码优化中的关键问题与解决方案。主要分析了BPF验证器的工作原理，包括静态代码分析、动态值追踪和预执行模拟三个验证阶段。针对项目中遇到的bpf_ringbuf_reserve和bpf_skb_load_bytes函数参数设置问题，指出这些参数必须是编译时常量才能通过验证。文章还讨论了数据读取函数的选择策略、是否需要预先pull数据等问题，并澄清了max_entries参数的单位是字节而非条目数。此外，作者通过实例代码展示了RingBuf容量的设置方法，并建议移除正式环境中的调试语句b]]></description><category></category></item><item><title><![CDATA[tc分析网络数据包的程序源码 修改调试随笔 总结（二）]]></title><link>https://blog.youkuaiyun.com/WHMRLIU/article/details/148685297</link><guid>https://blog.youkuaiyun.com/WHMRLIU/article/details/148685297</guid><author>WHMRLIU</author><pubDate>Tue, 17 Jun 2025 13:38:58 +0800</pubDate><description><![CDATA[本文探讨了从普通C语言转向BPF编程时需要注意的问题，特别是内存对齐和结构体设计。作者通过一个网络数据包处理示例，展示了如何优化头文件设计：使用显式对齐控制替代packed属性，添加魔数校验和长度检查，并确保内核与用户空间的一致性。文章详细解释了MAX_PKT_CAPTURE、PKT_EVENT_ALIGN等宏定义的作用，以及ALIGNED、ALIGN_UP等对齐处理技巧。通过静态断言在编译期验证结构体布局，既保证了性能又避免了运行时错误。虽然设计复杂度增加，但换取了更好的内存访问效率和跨平台兼容性。]]></description><category></category></item><item><title><![CDATA[tc分析网络数据包的程序源码 修改调试随笔 总结（一）]]></title><link>https://blog.youkuaiyun.com/WHMRLIU/article/details/148670642</link><guid>https://blog.youkuaiyun.com/WHMRLIU/article/details/148670642</guid><author>WHMRLIU</author><pubDate>Sun, 15 Jun 2025 15:29:04 +0800</pubDate><description><![CDATA[摘要
本文介绍了一个用于监控手机WiFi数据包发送情况的实验性项目。作者开发了一个内核层（eBPF）和用户层的程序，用于捕获和分析手机向外发送的数据包。

内核层：使用eBPF技术通过TC（Traffic Control）钩子捕获出站数据包，过滤非IP数据包，并将有效数据存入环形缓冲区。
用户层：解析内核层捕获的数据包，支持两种输出模式（屏幕显示或PCAP文件存储），并统计成功/失败的数据包数量。

该项目仅用于实验目的，不具备严格的安全测试能力，但可用于初步检测可疑的网络活动。
]]></description><category></category></item><item><title><![CDATA[修改调试随笔-结尾（二）]]></title><link>https://blog.youkuaiyun.com/WHMRLIU/article/details/147190722</link><guid>https://blog.youkuaiyun.com/WHMRLIU/article/details/147190722</guid><author>WHMRLIU</author><pubDate>Sun, 13 Apr 2025 13:15:09 +0800</pubDate><description><![CDATA[BPF 测试 娱乐]]></description><category></category></item><item><title><![CDATA[修改调试随笔-结尾]]></title><link>https://blog.youkuaiyun.com/WHMRLIU/article/details/146818260</link><guid>https://blog.youkuaiyun.com/WHMRLIU/article/details/146818260</guid><author>WHMRLIU</author><pubDate>Mon, 31 Mar 2025 13:58:02 +0800</pubDate><description><![CDATA[调试 优化  结尾]]></description><category></category></item><item><title><![CDATA[[再续修改调试随笔] 部分说明]]></title><link>https://blog.youkuaiyun.com/WHMRLIU/article/details/146322196</link><guid>https://blog.youkuaiyun.com/WHMRLIU/article/details/146322196</guid><author>WHMRLIU</author><pubDate>Mon, 17 Mar 2025 20:22:17 +0800</pubDate><description><![CDATA[调试环境及文件]]></description><category></category></item><item><title><![CDATA[再续修改调试随笔]]></title><link>https://blog.youkuaiyun.com/WHMRLIU/article/details/146208329</link><guid>https://blog.youkuaiyun.com/WHMRLIU/article/details/146208329</guid><author>WHMRLIU</author><pubDate>Wed, 12 Mar 2025 20:01:39 +0800</pubDate><description><![CDATA[BPF TC KERNEL USER]]></description><category></category></item><item><title><![CDATA[续修改调试随笔]]></title><link>https://blog.youkuaiyun.com/WHMRLIU/article/details/146127336</link><guid>https://blog.youkuaiyun.com/WHMRLIU/article/details/146127336</guid><author>WHMRLIU</author><pubDate>Mon, 10 Mar 2025 17:05:53 +0800</pubDate><description><![CDATA[修改、编译BPF程序随笔]]></description><category></category></item><item><title><![CDATA[修改调试随笔]]></title><link>https://blog.youkuaiyun.com/WHMRLIU/article/details/145789664</link><guid>https://blog.youkuaiyun.com/WHMRLIU/article/details/145789664</guid><author>WHMRLIU</author><pubDate>Sat, 22 Feb 2025 10:20:42 +0800</pubDate><description><![CDATA[traffic control抓包 源码修改 随笔记录而已。]]></description><category></category></item><item><title><![CDATA[antiX 内核编译]]></title><link>https://blog.youkuaiyun.com/WHMRLIU/article/details/145592327</link><guid>https://blog.youkuaiyun.com/WHMRLIU/article/details/145592327</guid><author>WHMRLIU</author><pubDate>Wed, 12 Feb 2025 19:16:10 +0800</pubDate><description><![CDATA[antix 内核重新编译]]></description><category></category></item><item><title><![CDATA[antix编译linux-6.13.1/samples/bpf]]></title><link>https://blog.youkuaiyun.com/WHMRLIU/article/details/145494007</link><guid>https://blog.youkuaiyun.com/WHMRLIU/article/details/145494007</guid><author>WHMRLIU</author><pubDate>Fri, 07 Feb 2025 20:06:35 +0800</pubDate><description><![CDATA[继续勾选Generate BTF type information，勾选此项后会出现一些关联项，继续勾选Generate BTF type information for kernel modules (NEW)，以确保内核模块包含BTF类型信息。编译BPF samples之前，需要先编译Linux内核源码，以便生成必要的头文件和构建环境，比如在内核根目录下生成vmlinux文件。比较高版本的内核编译时，更多配置选项有前提条件或者关联选择，如果不熟悉，直接去设置.config文件，会绕进云雾之中。]]></description><category></category></item><item><title><![CDATA[antiX23编译linux-6.1.105内核源码]]></title><link>https://blog.youkuaiyun.com/WHMRLIU/article/details/145314154</link><guid>https://blog.youkuaiyun.com/WHMRLIU/article/details/145314154</guid><author>WHMRLIU</author><pubDate>Fri, 24 Jan 2025 12:22:28 +0800</pubDate><description><![CDATA[antix 编译linux内核]]></description><category></category></item><item><title><![CDATA[antix Linux安装virt-manager]]></title><link>https://blog.youkuaiyun.com/WHMRLIU/article/details/145159477</link><guid>https://blog.youkuaiyun.com/WHMRLIU/article/details/145159477</guid><author>WHMRLIU</author><pubDate>Fri, 17 Jan 2025 09:37:08 +0800</pubDate><description><![CDATA[antiX Linux virt-manager]]></description><category></category></item><item><title><![CDATA[linuxmint安装绿联USB无线网卡AC1300]]></title><link>https://blog.youkuaiyun.com/WHMRLIU/article/details/143810399</link><guid>https://blog.youkuaiyun.com/WHMRLIU/article/details/143810399</guid><author>WHMRLIU</author><pubDate>Mon, 18 Nov 2024 02:58:56 +0800</pubDate><description><![CDATA[linux mint 绿联CM493 AC1300]]></description><category></category></item><item><title><![CDATA[关于hostapd.conf]]></title><link>https://blog.youkuaiyun.com/WHMRLIU/article/details/143087815</link><guid>https://blog.youkuaiyun.com/WHMRLIU/article/details/143087815</guid><author>WHMRLIU</author><pubDate>Mon, 21 Oct 2024 04:23:01 +0800</pubDate><description><![CDATA[关于hostapd.conf]]></description><category></category></item></channel></rss>