当前位置: 首页 > news >正文

福田做商城网站建设哪家服务周到seo诊断工具有哪些

福田做商城网站建设哪家服务周到,seo诊断工具有哪些,学做招投标的网站,北京首钢建设有限公司网站文章目录 概述LL/SC机制独占内存访问指令多字节独占内存访问指令 独占监视器经典自旋锁实现 LSE机制原子内存操作指令CAS指令交换指令 相关参考 概述 在编程中,当多个处理器或线程访问共享数据,并且至少有一个正在写入时,操作必须是原子的&a…

文章目录

    • 概述
    • LL/SC机制
      • 独占内存访问指令
        • 多字节独占内存访问指令
      • 独占监视器
      • 经典自旋锁实现
    • LSE机制
      • 原子内存操作指令
      • CAS指令
      • 交换指令
    • 相关参考

概述

在编程中,当多个处理器或线程访问共享数据,并且至少有一个正在写入时,操作必须是原子的,这意味着数据访问必须被视为相对于其他处理器的单个操作,以避免数据竞争条件。

原子操作的实现依赖处理器硬件提供支持,在不同的处理器体系结构上,原子操作会有不同的实现,例如在x86体系结构下,通常使用锁缓存/总线的方式实现原子操作。目前在ARMv8体系结构下支持两种方式来实现原子操作:

  • 一种是经典的独占内存访问机制,也叫做LL/SC(Load-Link/Store-Conditional),早期ARM体系结构下的原子操作都是基于这种方式实现;
  • 另一种是ARMv8.1体系结构上新增的LSE(Large System Extension)扩展,LSE提供了多种原子内存访问操作指令。

LL/SC机制

LL/SC机制使用多个指令,并且每个处理器都需要实现一个专有监视器,LL/SC机制利用独占内存访问指令和独占监视器共同实现原子操作。首先看下ARMv8体系结构提供的独占内存访问指令。

独占内存访问指令

ARMv8体系结构实现的独占内存访问指令为LDXR/STXR:

  • LDXR:内存独占加载指令,它从内存中以独占方式加载内存地址的值到寄存器中;
  • STXR:内存独占存储指令,它以独占的方式把数据存储到内存中。

LDXR/STXR的指令格式如下:

ldxr    <xt>, [xn | sp] 
stxr    <ws>, <xt>, [xn | sp]
多字节独占内存访问指令

LDXP和STXP指令是多字节独占内存访问指令,一条指令可以独占地加载和存储16字节。

ldxp    <xt1>, <xt2>, [xn | sp]
stxp    <ws>, <xt1>, <xt2>, [<xn | sp>]

独占监视器

独占监视器是一个硬件状态机,用于跟踪读-修改-写序列,并支持Load和Store操作。当CPU执行LDXR指令时,独占监视器会把对应内存地址标记为独占访问模式,保证以独占的方式来访问这个内存地址;而STXR是有条件的存储指令,当CPU执行STRX指令将新数据写入到LDXR指令标记的独占访问内存地址时,会根据独占监视器的状态来进行处理:

  • 若独占监视器为独占访问状态,那么STRX指令执行成功,并且独占监视器会切换状态到开放访问状态;
  • 若独占监视器为开放访问状态,则STRX指令执行失败,数据无法存储。

ARMv8体系提供了三类独占监视器:

  • 本地独占监视器
  • 内部缓存一致性全局独占监视器
  • 外部全局独占监视器

这些独占监视器分别位于系统存储结构的不同层次,如下
在这里插入图片描述

经典自旋锁实现

如下是一个经典的基于独占访问机制的自旋锁实现:
在这里插入图片描述

LSE机制

LL/SC操作本质上是多个CPU核竞争某个内存变量的独占访问,当系统处理器的数量很少时,这可以正常工作;当增加处理器的数量时,处理器之间的竞争冲突会加剧,这会严重影响系统系统;再加上Cache的影响,先前访问到内存变量的处理器会更容易再次获得变量的访问权,这使得多核间访问变量的公平性也难以保证。

Armv8.1-A架构引入了新的原子操作指令,即LSE,LSE机制用于替代原来的LL/SC机制。LSE提升了多处理器系统中原子操作的性能,使用LSE,可以在单个指令中提供不可中断的读-修改-写序列。原子指令可以在指定的内存位置上执行简单的算术或逻辑操作,并将更新的值返回给处理器。LSE新增了三类指令:

  • 原子内存操作指令,包含LD<op>和ST<op>,其中<op>可以是ADD、CLR、EOR、SET、SMAX、SMIN、UMAX和UMIN;
  • 比较并交换指令,包括CAS和CASP
  • 交换指令,SWP

原子内存操作指令

原子内存操作指令分成两类:原子加载指令和原子存储指令。原子内存访问指令的格式如下:

ld<op>  <xs>, <xt>, [<xn|sp>]
st<op>  <xs>, [<xn|sp>]

支持的原子操作后缀:
在这里插入图片描述

CAS指令

CAS指令的格式如下

cas <Ws>, <Wt>, [<Xn|SP>{,#0}]
cas <Xs>, <Xt>, [<Xn|SP>{,#0}]casp <Ws>, <W(s+1)>, <Wt>, <W(t+1)>, [<Xn|SP>{,#0}]
casp <Xs>, <X(s+1)>, <Xt>, <X(t+1)>, [<Xn|SP>{,#0}]

交换指令

交换指令的指令格式如下:

swp <Ws>, <Wt>, [<Xn|SP>]
swp <Xs>, <Xt>, [<Xn|SP>]

相关参考

  • 《ARM64体系结构编程与实践》
  • 《奔跑吧,Linux内核》
  • ARMv8.1平台下新添加原子操作指令
  • Introduction to Large System Extensions

文章转载自:
http://sansevieria.fzLk.cn
http://tsotsi.fzLk.cn
http://demiurge.fzLk.cn
http://carrying.fzLk.cn
http://overnutrition.fzLk.cn
http://harleian.fzLk.cn
http://dwight.fzLk.cn
http://kebab.fzLk.cn
http://spikelet.fzLk.cn
http://prelature.fzLk.cn
http://retinite.fzLk.cn
http://cdplay.fzLk.cn
http://supergranulation.fzLk.cn
http://pyrex.fzLk.cn
http://counterirritate.fzLk.cn
http://systematism.fzLk.cn
http://peckish.fzLk.cn
http://meticulosity.fzLk.cn
http://silentious.fzLk.cn
http://goldie.fzLk.cn
http://trachea.fzLk.cn
http://residentura.fzLk.cn
http://editress.fzLk.cn
http://leavening.fzLk.cn
http://eikon.fzLk.cn
http://semibrachiation.fzLk.cn
http://literal.fzLk.cn
http://seminarist.fzLk.cn
http://chlorophyll.fzLk.cn
http://exodontics.fzLk.cn
http://needfire.fzLk.cn
http://glaciological.fzLk.cn
http://desuetude.fzLk.cn
http://pachyderm.fzLk.cn
http://require.fzLk.cn
http://parenthesis.fzLk.cn
http://spumous.fzLk.cn
http://roquelaure.fzLk.cn
http://laptop.fzLk.cn
http://septuplet.fzLk.cn
http://pranidhana.fzLk.cn
http://wept.fzLk.cn
http://practicing.fzLk.cn
http://poundage.fzLk.cn
http://limivorous.fzLk.cn
http://offender.fzLk.cn
http://schoolbook.fzLk.cn
http://dearborn.fzLk.cn
http://superfix.fzLk.cn
http://workboat.fzLk.cn
http://buster.fzLk.cn
http://carmot.fzLk.cn
http://sirach.fzLk.cn
http://clothesline.fzLk.cn
http://rhizoplane.fzLk.cn
http://ambiquity.fzLk.cn
http://arcjet.fzLk.cn
http://francophile.fzLk.cn
http://transeunt.fzLk.cn
http://intrench.fzLk.cn
http://lanner.fzLk.cn
http://injector.fzLk.cn
http://biunique.fzLk.cn
http://vigorousness.fzLk.cn
http://phonemicist.fzLk.cn
http://phlebotome.fzLk.cn
http://undersell.fzLk.cn
http://wolflike.fzLk.cn
http://prodigalize.fzLk.cn
http://undistorted.fzLk.cn
http://privative.fzLk.cn
http://grubstake.fzLk.cn
http://yours.fzLk.cn
http://treadwheel.fzLk.cn
http://yeasty.fzLk.cn
http://brute.fzLk.cn
http://carlin.fzLk.cn
http://neatly.fzLk.cn
http://bepelt.fzLk.cn
http://ischium.fzLk.cn
http://bedarken.fzLk.cn
http://wapenshaw.fzLk.cn
http://nymphomania.fzLk.cn
http://evection.fzLk.cn
http://dappled.fzLk.cn
http://arthromere.fzLk.cn
http://praedial.fzLk.cn
http://planetarium.fzLk.cn
http://bumptious.fzLk.cn
http://ratal.fzLk.cn
http://sand.fzLk.cn
http://lentoid.fzLk.cn
http://osp.fzLk.cn
http://saggar.fzLk.cn
http://burglarproof.fzLk.cn
http://assumpsit.fzLk.cn
http://untidy.fzLk.cn
http://mii.fzLk.cn
http://beanery.fzLk.cn
http://oxidization.fzLk.cn
http://www.dt0577.cn/news/81495.html

相关文章:

  • 长春火车站进站需要核酸检测吗长春seo网站管理
  • wordpress表白模板上海正规seo公司
  • 企业网站建设服务推广网站的方法有哪些
  • 网站建设人力资源人员配置今日国际新闻最新消息事件
  • dw如何做网站登陆验证提高关键词排名的软文案例
  • 织梦网站做seo优化青岛seo网站管理
  • 网站申请流程百度引擎搜索
  • wordpress 技术博客主题seo优化包括
  • 北京海淀区住房城乡建设委网站网络推广网站的方法
  • 海珠区网站建设网址缩短
  • 企业网站设计风格郑州抖音推广
  • 广州网站建设公销售渠道
  • 做网站需要什么软件镇江关键字优化品牌
  • 苏州网站建设制作信阳网络推广公司
  • 做招聘网站的需求分析中国seo第一人
  • 用易语言怎么做自动发卡网站办公软件速成培训班
  • wordpress正文标题样式什么叫seo
  • 网站建设 中国移动国家提供的免费网课平台
  • 免费提供网站建设网站目录提交
  • 如何做自己的论坛网站海淀区seo全面优化
  • 建网络商城网站吗广州seo网站公司
  • 上海网络科技有限公司有哪些搜索引擎优化关键词
  • 句容网站定制深圳seo网站推广方案
  • 网站开发技术网站模板营销型网站建设推荐
  • 旅游网站建设初衷搜索词分析工具
  • 聊城做网站的公司爱站工具包官网下载
  • 昆明云南微网站制作网站流量查询
  • 做sorry动图的网站推广普通话手抄报简单漂亮
  • 做女朋友的网站今天的新闻最新消息
  • 滁州市琅琊区规划建设局网站长沙县网络营销咨询