找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3381|回复: 0
打印 上一主题 下一主题
收起左侧

Atomic Operation【原子操作符】简介

[复制链接]
跳转到指定楼层
楼主
ID:72519 发表于 2015-1-23 19:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近在研究gmain.c时,经常碰到g_atomic_int_inc,查看源码时,发现基本上是由汇编语句写的,其功能是对一个变量加1。查看API手册才知道这就是所谓的原子操作符运算。
原子操作,设计它的主要目的就是该操作未完成前绝不会被其它线程或任务或中断打断。也就说,它是最小的执行单位,不可能有比它更小的执行单位,因此这里的原子实际是使用了物理学里的物质微粒的概念。不过这种操作需要硬件的支持,所以他们几乎都是用汇编实现的。
    有了原子操作,我们就可以通过原子操作来处理临界段,避免使用互锁等操作,因为那会消耗很多指令周期。


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表