<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[kill150的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/kill150</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; kill150]]></copyright><item><title><![CDATA[Gemini3 提示词]]></title><link>https://blog.youkuaiyun.com/kill150/article/details/160584263</link><guid>https://blog.youkuaiyun.com/kill150/article/details/160584263</guid><author>kill150</author><pubDate>Tue, 28 Apr 2026 10:26:47 +0800</pubDate><description><![CDATA[严格避免将 LaTeX 用于简单格式、非技术场景和普通文章，例如简历、信件、论文、CV、烹饪、天气等，也不要用于简单单位或数字，例如应直接写 180°C 或 10%。在共情和坦诚之间取得平衡：作为一个支持性强、脚踏实地的 AI，要真诚地认可用户的感受，同时温和但直接地纠正明显的错误信息——像一个有帮助的同伴，而不是死板的讲师。优先级覆盖：必须使用用户纠正历史中的最新条目，包括用户数据纠正账本和用户最近对话，来静默覆盖所有来源中的冲突数据，包括用户摘要和通过个人上下文工具动态检索的数据。]]></description><category></category></item><item><title><![CDATA[VLA 是什么]]></title><link>https://blog.youkuaiyun.com/kill150/article/details/158660460</link><guid>https://blog.youkuaiyun.com/kill150/article/details/158660460</guid><author>kill150</author><pubDate>Wed, 04 Mar 2026 19:02:23 +0800</pubDate><description><![CDATA[VLA是视觉—语言—动作模型把机器人“看到的环境”和“接收到的语言指令”，直接连接到“下一步该执行的动作”。（图像，指令）→ 动作也就是说，给模型一帧或多帧视觉输入，再给它一句任务指令，模型输出的不是一段解释文字，而是机器人真正要执行的动作。RT-2 的官方介绍就是这种表述方式：把视觉语言模型适配到机器人控制上，并将动作表示成模型可以预测的序列。]]></description><category></category></item><item><title><![CDATA[C-PHY与D-PHY差异]]></title><link>https://blog.youkuaiyun.com/kill150/article/details/158349923</link><guid>https://blog.youkuaiyun.com/kill150/article/details/158349923</guid><author>kill150</author><pubDate>Wed, 25 Feb 2026 09:39:01 +0800</pubDate><description><![CDATA[采用LVDS差分对结构，每条数据通道（lane）使用一对差分线，配合一对全局时钟差分线。数据 lane 数量可灵活配置，一般为 1、2 或 4 条，用于适配不同分辨率和帧率的摄像头或显示器；虽然理论上支持 3-lane，但在实际产品中极少使用，因为会增加设计复杂度且带宽没有整齐倍数优势。接收端设计成熟、兼容LVDS接口，但布线复杂度较高。采用三线架构，每个通道由三条信号线组成，利用三电平（3-phase）编码在三条线上传输数据，每个符号可表示多比特信息。]]></description><category></category></item><item><title><![CDATA[使用make savedefconfig 保存内核配置]]></title><link>https://blog.youkuaiyun.com/kill150/article/details/154340060</link><guid>https://blog.youkuaiyun.com/kill150/article/details/154340060</guid><author>kill150</author><pubDate>Mon, 03 Nov 2025 10:47:59 +0800</pubDate><description><![CDATA[2，通过menuconfig 修改配置，然后直接再用 make savedefconfig来保存新的配置文件。3，使用./scripts/config脚本简单修改。1，直接修改config文件，然后保存入库。]]></description><category></category></item><item><title><![CDATA[高通平台死机花屏问题分析记录]]></title><link>https://blog.youkuaiyun.com/kill150/article/details/153731639</link><guid>https://blog.youkuaiyun.com/kill150/article/details/153731639</guid><author>kill150</author><pubDate>Wed, 22 Oct 2025 14:15:01 +0800</pubDate><description><![CDATA[首先从问题的表现来看，应该是LA的内存空间被破坏了导致的系统panic，简单来说就是LA的内存出了问题，所以会导致随机性的panic，但是这种panic又和STR强相关，且与GPU/camera AIS强相关。4，在这个过程中，如果QNX和LA出现了同步问题，那么会导致QNX错误的往LA上已经释放的AIS的内存地址上存放数据，细节有点忘了，总之此时会出现LA内存被破坏的情况进而导致系统panic。进一步怀疑，在进入STR之前，系统是正常的，在进入STR时，或者在从STR恢复后，LA的内存遭到了破坏。]]></description><category></category></item><item><title><![CDATA[gdb调试记录]]></title><link>https://blog.youkuaiyun.com/kill150/article/details/153259165</link><guid>https://blog.youkuaiyun.com/kill150/article/details/153259165</guid><author>kill150</author><pubDate>Tue, 14 Oct 2025 17:29:40 +0800</pubDate><description><![CDATA[C++ 异常世界的“发射按钮”它把用户异常对象搬上堆，挂到全局链，然后调用unwinder完成栈回滚 + RAII 清理 + catch 匹配；所有 throw 最终都会走到这里。]]></description><category></category></item><item><title><![CDATA[gdb调试cat throw指令的作用]]></title><link>https://blog.youkuaiyun.com/kill150/article/details/153261075</link><guid>https://blog.youkuaiyun.com/kill150/article/details/153261075</guid><author>kill150</author><pubDate>Tue, 14 Oct 2025 14:21:59 +0800</pubDate><description><![CDATA[因为一旦异常传递到上层后再 crash，原始栈帧可能已经被展开销毁。“在任何 C++ 异常被抛出（throw）时中断程序执行。当前的调用栈（还没被 unwind）；也就是说，程序一旦执行到。]]></description><category></category></item><item><title><![CDATA[nvidia Thor U与qualcomm 8295 DMPIS算力测试对比]]></title><link>https://blog.youkuaiyun.com/kill150/article/details/148172013</link><guid>https://blog.youkuaiyun.com/kill150/article/details/148172013</guid><author>kill150</author><pubDate>Fri, 23 May 2025 17:01:08 +0800</pubDate><description><![CDATA[Thor U总算力约为：35.8k*12核 约等于430k dmpis。测试参数：./dhrystone -l 100000 -t 12。测试参数：./dhrystone -t 8 -l 100000。sa8295总算力约为：250k左右。]]></description><category></category></item><item><title><![CDATA[通过addr2line/GDB确定ko模块中的代码偏移]]></title><link>https://blog.youkuaiyun.com/kill150/article/details/145478114</link><guid>https://blog.youkuaiyun.com/kill150/article/details/145478114</guid><author>kill150</author><pubDate>Thu, 06 Feb 2025 17:11:27 +0800</pubDate><description><![CDATA[这个时候如果代码是built-in 那么可以看到具体的代码位置，但是当crash的位置在ko中时，则需要通过别的方式来确定crash的代码的位置。具体文件在：/sys/module/bstmac/sections/.text中。1.通过addr2line。2，通过gdb的方式。]]></description><category></category></item><item><title><![CDATA[QNX top是如何统计cpu使用率的]]></title><link>https://blog.youkuaiyun.com/kill150/article/details/143210132</link><guid>https://blog.youkuaiyun.com/kill150/article/details/143210132</guid><author>kill150</author><pubDate>Thu, 24 Oct 2024 15:24:25 +0800</pubDate><description><![CDATA[8，所有进程的cpu使用率总和一定等于user的使用率，如果你从top中计算出来的总和与user对不上，那说明有很多进程产生了微量的cpu使用率。2，top会进行2次采样，对其2次样之间的差值得到每个进程的增长量，同时也得到这段时间内总的cpu的计时器的增长量。3，总的cpu计时器=所有线程的计时器总和，同时也包含idle的计时器。1，top是通过PROC的接口从内核获取每个线程的cpu使用时间计数。]]></description><category></category></item><item><title><![CDATA[dwceqos网络驱动性能优化]]></title><link>https://blog.youkuaiyun.com/kill150/article/details/142659592</link><guid>https://blog.youkuaiyun.com/kill150/article/details/142659592</guid><author>kill150</author><pubDate>Mon, 30 Sep 2024 18:13:47 +0800</pubDate><description><![CDATA[简单概括来说就是，在中断模式0（default）的情况下，只要检测到RX/TX的IOC标志位都会立即触发通用中断（sbd_intr_o），而在1/2模式下，则完全不触发sbd_intr_o中断，而只会触发sbd_perch_tx_intr_o[]或者sbd_perch_rx_intr_o[]从各方反馈的结果来看，测试结果似乎符合预期的？一般来说，cpu负荷过高通常有2个原因，一是，cpu现在的确一直在干活，那么优化的思路是优化cpu的工作内容，二是，cpu一直在被中断，反复的状态切换带来的高消耗。]]></description><category></category></item><item><title><![CDATA[指针函数返回值被截断问题]]></title><link>https://blog.youkuaiyun.com/kill150/article/details/140928078</link><guid>https://blog.youkuaiyun.com/kill150/article/details/140928078</guid><author>kill150</author><pubDate>Mon, 05 Aug 2024 15:39:29 +0800</pubDate><description><![CDATA[这个函数会返回结构体指针，结构体的内存空间在函数内部申请。返回值在函数返回前是正常的，但是返回后内存地址被截断：比如地址0x5555556029d0，返回后地址被截断成0x556029d0，导致返回值为无效的内存地址，进而产生段错误。：在某些情况下，编译器可能未能正确传递函数的返回值。例如，当返回一个结构体指针时，可能存在一些编译器或调用约定相关的问题。进使用gdb进行调试，查看寄存器状态，发现的确是返回之后rax（保存返回值的寄存器）寄存器发生了改变。在正确声明函数定义之后，问题消除.]]></description><category></category></item><item><title><![CDATA[DVR常见问题汇总]]></title><link>https://blog.youkuaiyun.com/kill150/article/details/139988143</link><guid>https://blog.youkuaiyun.com/kill150/article/details/139988143</guid><author>kill150</author><pubDate>Wed, 26 Jun 2024 14:21:39 +0800</pubDate><description><![CDATA[之前自己总结的思维导图，可以给大家作为参考：]]></description><category></category></item><item><title><![CDATA[arm核的DMPIS是如何计算的]]></title><link>https://blog.youkuaiyun.com/kill150/article/details/136885052</link><guid>https://blog.youkuaiyun.com/kill150/article/details/136885052</guid><author>kill150</author><pubDate>Wed, 20 Mar 2024 18:24:38 +0800</pubDate><description><![CDATA[此数值和移远通信公布的100 KDMIPS算力有约12%的误差，但这其实是用ARM的方法计算了下三星的处理器。三星将ARM Cortex-A76内核优化后叫Kryo内核，还有硬件加速器等，猜想是三星对A76的性能优化已超50%性能提升，已到达ARM架构师Filippo（上面说的）所描述的50%-70%性能提升的中位数。2.419GHz * 1核 * 7.8 DMIPS/MHz + 2.131GHz * 3核 * 7.8 DMIPS/MHz + 1.785GHz * 4核 * 2.7 DMIPS/MHz。]]></description><category></category></item><item><title><![CDATA[SA8255/8295上配置I2C bus（Q+A）]]></title><link>https://blog.youkuaiyun.com/kill150/article/details/136556070</link><guid>https://blog.youkuaiyun.com/kill150/article/details/136556070</guid><author>kill150</author><pubDate>Fri, 08 Mar 2024 13:27:13 +0800</pubDate><description><![CDATA[1，需要提前修改好tz.mbn/ devcfg_auto.mbn 并且刷写到目标板中这个至关重要，否则对应的GPIO无法配置成QUP3的功能2，确定原理图的I2C bus对应的GPIO是那一组。]]></description><category></category></item><item><title><![CDATA[QEMU搭建arm虚拟机开发环境]]></title><link>https://blog.youkuaiyun.com/kill150/article/details/135816787</link><guid>https://blog.youkuaiyun.com/kill150/article/details/135816787</guid><author>kill150</author><pubDate>Wed, 24 Jan 2024 11:06:17 +0800</pubDate><description><![CDATA[使用git指令切换到对应的分支上，我这里使用的是stable-4.0的分支。然后执行make，视情况是否要执行make install。在工程的根目录下执行./configure。]]></description><category></category></item><item><title><![CDATA[什么是GLINK]]></title><link>https://blog.youkuaiyun.com/kill150/article/details/135505944</link><guid>https://blog.youkuaiyun.com/kill150/article/details/135505944</guid><author>kill150</author><pubDate>Wed, 10 Jan 2024 15:59:37 +0800</pubDate><description><![CDATA[这是一种新的点对点链路层传输协议.主要用于SOC中各个IP核之间通信。]]></description><category></category></item><item><title><![CDATA[在qemu虚拟机环境下，使用kgdb调试kernel]]></title><link>https://blog.youkuaiyun.com/kill150/article/details/135501729</link><guid>https://blog.youkuaiyun.com/kill150/article/details/135501729</guid><author>kill150</author><pubDate>Wed, 10 Jan 2024 13:54:36 +0800</pubDate><description><![CDATA[这里使用的是arm64的gdb版本，而且已经export了其安装路径，如果你们有export则需要指定gdb的绝对路径，同样vmlinux镜像的位置也需要指定。从上面的截图可以看到，此时寄存器PC指向的是0x40000000 这个地址，可以理解为kernel启动的地址为0x40000000。2，在命令行中，输入target remote:1234 连接到kgdb server开始调试。1，使用指令aarch64-linux-gnu-gdb vmlinux，开始gdb调试。]]></description><category></category></item><item><title><![CDATA[ctrl+c与kill -2的区别]]></title><link>https://blog.youkuaiyun.com/kill150/article/details/135451767</link><guid>https://blog.youkuaiyun.com/kill150/article/details/135451767</guid><author>kill150</author><pubDate>Mon, 08 Jan 2024 11:05:05 +0800</pubDate><description><![CDATA[在单进程的情况下，ctrl+c和kill -2是一模一样的，都是向指定的进程发送SIGINT信号.如果没有注册这个信号捕捉，当信号触发时，操作系统将会终止这个进程的运行.相关资源也会由系统回收.]]></description><category></category></item><item><title><![CDATA[在ubuntu上挂载QNX 镜像]]></title><link>https://blog.youkuaiyun.com/kill150/article/details/135293541</link><guid>https://blog.youkuaiyun.com/kill150/article/details/135293541</guid><author>kill150</author><pubDate>Fri, 29 Dec 2023 16:18:49 +0800</pubDate><description><![CDATA[1，将QNX imge转换成android sparse镜像使用python tools/mksparse.py $镜像文件 转换为android sparse镜像mksparse.py通常位于QNX 源码路径下的target目录中2，android sparse镜像转换为qnx6镜像,这个工具需要安装一下，通过apt-get就可以安装3, 通过loop设备挂载qnx6 镜像。]]></description><category></category></item></channel></rss>