
基础
文章平均质量分 58
Tim-Cheng
这个作者很懒,什么都没留下…
展开
-
【ESP32】ST7789滚屏驱动
320为滚动区域。原创 2023-07-18 17:25:25 · 2052 阅读 · 2 评论 -
【Mesh】关于Mesh中Seq+IV与RPL分析
一,Mesh中SEQ,IV,RPL的含义1,SEQ(Sequence Number)SEQ是包含在网络 PDU 的 SEQ 字段中的 24 位值,主要用于防止重放攻击。同一节点内的元素可能会或可能不会彼此共享SEQ。在每个消息源(由 SRC 字段中包含的单播地址标识)的每个新网络 PDU 中具有不同的序列号对于网状网络的安全性至关重要。最大值:0xFFFFFF, 24 位序列号,一个元素可以在重复一个随机数之前传输 16,777,216 条消息。如果一个元素平均每 5 秒发送一次消息(对于已知用例原创 2022-05-31 17:00:00 · 1498 阅读 · 0 评论 -
关于SLIST,STAILQ,LIST,TAILQ,CIRCLEQ图示详解
一,前述由于接触蓝牙协议栈相关工作,涉及很多mbuf,mqueue的操作,其中不乏Berkeley queue的身影,故因此,深入了解一下链表以及队列相关操作,九几年的代码放在现在依旧经典,需要深入琢磨多次!该部分包含5个部分,单向链表,双向链表,队列,尾队列,环形队列。(注:在此之后,将依赖此深入了解mbuf与mqueue)文件索引地址:https://github.com/torvalds/linux/blob/master/drivers/scsi/aic7xxx/queue.h二,Sing原创 2022-03-23 14:42:23 · 2178 阅读 · 1 评论 -
【ELL】ell学习之__builtin_expect(likely-unlikely)
一、前述在很多源码如Linux内核、Glib等,我们都能看到likely()和unlikely()这两个宏,通常这两个宏定义是下面这样的形式。// __builtin_expect()函数是GCC的一个内建函数(build-in function).// found in include/linux/compiler.h#define likely(x) __builtin_expect(!!(x), 1) // 表示 x 的值为真的可能性更大;#define unlikely(x) __原创 2021-03-08 11:06:14 · 454 阅读 · 0 评论 -
【基础】static搭配inline 味道更佳(explicit_bzero-rawmemchr)
最近在编译ELL,发现两个函数比较有意思,深入了解一下一、关于这两个函数/* The bzero() function writes len zero bytes to the string b. If len is zero, bzero() does nothing. The explicit_bzero() variant behaves the same, but will not be removed by a compiler's dead st.原创 2021-03-02 11:20:59 · 587 阅读 · 0 评论