- 博客(10)
- 资源 (3)
- 收藏
- 关注
原创 从linux到QNX一些疑问
整理自实践与官方文档,聚焦 QNX 与 Linux 的关键差异,涵盖微内核架构、驱动开发范式及 MTK 协处理器场景。
2026-08-03 08:25:08
187
原创 链接脚本FAQ
你的理解很准确。在 ELF 加载过程中,内核(或加载器)主要依据的是 LMA(Load Memory Address,加载内存地址)来决定把段复制到内存的哪个位置。具体来说:· LMA 决定加载位置:程序头中 p_paddr 字段通常代表 LMA。加载器会直接将段的数据拷贝到这个地址。· VMA 决定运行位置:p_vaddr 字段是 VMA(虚拟内存地址)。对于大部分可执行文件(如动态链接的 ELF),LMA 和 VMA 相同,所以不显眼;
2026-04-22 16:39:19
236
原创 Linux platform driver疑问
真实总线是"硬件通道",platform_bus 是"软件配对器"。这两个函数是设备模型“热插拔”和“自动配置”特性的基石,确保了无论是设备先来还是驱动先到,最终都能正确、安全地建立绑定关系。
2026-04-19 17:35:07
236
原创 Freertos任务切换疑问
portYIELD_FROM_ISR() 是 FreeRTOS 中用于在中断服务函数(ISR)结束时请求任务切换的宏。它的核心作用是在,而不是回到被中断的任务。⚙️ 工作原理与使用步骤💡 核心注意事项· 优先使用 pxHigherPriorityTaskWoken:这是官方推荐的标准用法,只有在,性能最优。· 关于传 pdTRUE 的情况:如果你对性能不敏感,或者不确定是否会唤醒高优先级任务,直接传 pdTRUE 强制切换也是可以的,但会多一次无意义的上下文切换开销。
2026-04-09 08:52:01
377
原创 Freertos之software timer疑问
FreeRTOS 的 xTimerPendFunctionCall() 并。实际上,它的 xTicksToWait 参数控制的是调用者(发送命令的任务)的最大阻塞时间,而命令本身的执行顺序(FIFO) 原则。
2026-04-09 08:38:01
410
转载 宏定义 # 和 ## 用法总结(引用并修改)
转载并修改:添加链接描述今天学socket发现/usr/include/bits/sockaddr.h 文件35行有这么一句话 #define __SOCKADDR_COMMON(sa_prefix) / sa_family_t sa_prefix##family有点蒙呀!上网探索发现了一下,填补个空白,分享给大家,具体内容如下:1、一般用法我们使用#把宏参数变为一个字符串,用##把两个宏参数贴合在一起.用法:#include<stdio.h> #define STR(s
2021-03-02 18:11:19
1127
原创 2020-08-06
行星轮系转速转矩计算(引用他人)作者:demobilize链接:https://www.zhihu.com/question/264462816/answer/352743028来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。1、简单行星轮系转速关系:设nS、nR、nC分别为太阳轮S、齿圈R和行星架C的转速,α为齿圈与太阳轮的齿比或节圆半径比(α称为行星轮系结构参数,大于1)。如将整个轮系看作在以-nC转动,则可认为行星架C没有转动,行星轮系等效于定轴轮系,故有:(n
2020-08-06 19:28:46
4566
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅