原子操作(Atomic Operation)

更多资料下载,冲击月薪过万,一线经验工程师录制, 干货满满的嵌入式视频教程,请点击淘宝店:wanglitao.taobao.com
  1. 核心原理
    原子操作是不可被中断的指令序列,通过 CPU 硬件指令(如 lock 前缀)保证操作的原子性,适用于单个变量的并发修改(如计数器、标志位)。

  2. 关键类型
    类型 适用场景 核心接口

  • atomic_t: 32位整数原子操作 atomic_read()/atomic_set()/atomic_inc()/atomic_dec_and_test()
  • atomic64_t:64位整数原子操作 atomic64_read()/atomic64_add()
  • bitops:位操作原子控制 set_bit()/clear_bit()/test_and_set_bit()
  1. 适用场景
    简单计数器(如统计设备打开次数)、状态标志位(如设备忙闲标志)。
    优势:无锁开销,效率极高;局限性:仅支持单一变量操作,无法保护复杂临界区。
驱动开发核心理论,Linux内核开发入门实战视频教程:《Linux内核编程》,具有一线芯片原厂开发经验的驱动工程师录制,详情点击:王利涛老师个人淘宝店:Linux内核编程