Linux 驱动专题 - 详解 mmap
🗺️Linux 驱动专题 - 详解 mmap
本专题旨在帮助设计、实现、评审和维护有效的驱动mmap方案,结构包括概述、架构框架、分点细节、实践指南、易错点分析和词汇表。主要内容涵盖映射对象的定义、内核映射链路的建立、缓存和DMA的一致性问题、权限和安全边界、生命周期管理,以及如何将理论沉淀为可复用的方法论。推荐阅读方式根据不同需求提供了针对性的指导,帮助读者有效掌握mmap的核心概念与应用。
Linux 内核原子操作详解:CAS 与 Test-and-Set
⚛️Linux 内核原子操作详解:CAS 与 Test-and-Set
Linux 内核的原子操作是同步的基石,提供 atomic_t/atomic64_t 整数、位操作(test_and_set_bit 等)以及通用的 CAS(cmpxchg、try_cmpxchg)等机制;通过这些原语实现自旋锁、引用计数和无锁数据结构,并配合内存屏障(smp_mb、smp_load_acquire、smp_store_release 等)确保跨 CPU 的访问顺序;还介绍了 per‑CPU 本地原子、64 位/长整型原子以及不同内存序变体的使用原则,以实现高效且安全的并发控制。
micro-ROS 实战 02|rclc 发布、订阅与自定义传输
micro-ROS 实战 02|rclc 发布、订阅与自定义传输
Micro ROS是一个强大的框架,允许在资源受限的设备上运行ROS2。关键要点包括正确初始化网络和ROS选项,创建节点、发布者、订阅者、定时器和执行者,设置适当的回调函数,管理资源,处理错误和超时,以及根据需要自定义传输方式。通过遵循这些指南,开发者可以在ESP32上实现ROS2通信并与其他ROS2节点交互。