0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Java底层实现,CPU还有10个术语!

Dbwd_Imgtec 来源:未知 作者:伍文辉 2018-03-28 14:14 次阅读

1.内存屏障(memory barriers)是一组处理器指令,用于实现对内存操作的顺序限制。

2.缓冲行(cache line)CPU高速缓存中可以分配的最小存储单位。处理器填写缓存行时会加载整个缓存行,现代CPU需要执行几百次CPU指令。

3.原子操作(atomic operations)不可中断的一个或一系列操作。

4.缓存行填充(cache line fill)当处理器识别到从内存中读取操作数是可缓存的,处理器填写整个高速缓存行到适当的缓存(L1,L2,L3的或所有)。

5.缓存命中(cache hit)如果进行高速缓存行填充操作的内存位置仍然是下次处理器访问的地址时,处理器从缓存中读取操作数,而不是从内存读取。

6.写命中(write hit)当处理器将操作数写回到一个内存缓存的区域时,它首先会检查这个缓存的内存地址是否存在行中,如果存在一个有效的缓存行,则处理器将这个操作数写回到缓存,而不是写回到内存,这个操作被称为写命中。

7.写缺失(write misses the cache)一个有效的缓存行被写入到不存在的内存区域。

8.比较并交换(compare and swap)CAS操作需要输入两个数值,一个旧值(期望操作前的值)和一个新值,在操作期间先比较旧值有没有发生变化,如果没有发生变化,才交换成新值,发生了变化则不交换。

9.CPU流水线(CPU pipeline)CPU流水线的工作方式就像工业生产上的装配流水线,在CPU中由5-6个不同功能的电路单元组成一条指令处理流水线,然后将一条X86指令分成5-6步后再由这些电路单元分别执行,这样就能实现一个CPU时钟周期完成一条指令,因此提高CPU的运算速度。

10.内存顺序冲突(Memory order violation)内存顺序冲突一般是由假共享引起的,假共享是指多个CPU同时修改一个缓存行的不同部分引起其中一个CPU的操作无效,当出现这个内存顺序冲突时,CPU必须清空流水线。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10412

    浏览量

    206465
  • JAVA
    +关注

    关注

    19

    文章

    2903

    浏览量

    102977

原文标题:Java底层实现——CPU的10个术语

文章出处:【微信号:Imgtec,微信公众号:Imagination Tech】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    CPU底层工作原理

    前段时间,我连续写了十来篇CPU底层系列技术故事文章,有不少读者私信我让我写一下CPU的寄存器。
    发表于 07-25 10:20 906次阅读

    7改变世界的Java项目

    搜索库提供了HTTP访问,使它能够成为任何系统的一部分,无论这系统是不是由Java实现。比其它项目好的 地方,Solr已经使强力快速的搜索成为现代Web应用的一可选项。  5. Hudson
    发表于 07-26 08:48

    Java学习经:提高Java培训效率的6方法

      初学Java就像交朋友从陌生到熟悉再到铁杆搭档一生相伴,随着学习的深入,你会发现学Java并不是想象的那样枯燥和困难,甚至还有一些美妙之感,这是在拥有强大的技术和出色的设计思想后才能体会
    发表于 10-19 11:05

    Java一直独得恩宠的秘诀

    Apache和Spring。这些优秀的社区提供了很多非常好的框架,借助这些框架可以使我们不用去关注Java底层的开发,而只需关注业务的实现Java为什么能一直独得恩宠?除了上面罗列的
    发表于 09-28 14:24

    cv::bmcv::resize看代码底层调用的是bmcv_image_resize,cv::resize用的是cpu吗?

    cv::bmcv::resize 看代码底层调用的是bmcv_image_resize,cv::resize用的是cpu吗,处理的是mat中cpu内存中的那部分数据吗?还有1
    发表于 09-18 06:40

    技术术语CPU术语

    技术术语CPU术语
    发表于 06-30 19:45 1139次阅读

    CPU专用术语大全

    CPU专用术语大全   文章内容如下  Intel公司的X86序列CPU以及其它公司所生产的兼容产品,是目前世界上个人电脑中装机最多的
    发表于 01-12 11:46 1037次阅读

    CPU接口类型术语与主板连接对应常识

    CPU接口类型术语与主板连接对应常识 CPU需要通过某个接口与主板连接的才能进行工作。CPU经过这么多年的发展,采用的接口方式有引脚式、卡式、
    发表于 02-04 08:52 3234次阅读

    Java中装箱和拆箱是如何实现

    一。什么是装箱?什么是拆箱? 二。装箱和拆箱是如何实现的 三。面试中相关的问题 一。什么是装箱?什么是拆箱? 在前面的文章中提到,Java为每种基本数据类型都提供了对应的包装器类型,至于为什么会为
    发表于 09-27 10:07 0次下载

    聊聊java泛型实现的原理与好处

    摘要: 和C++以模板来实现静多态不同,Java基于运行时支持选择了泛型,两者的实现原理大相庭径。C++可以支持基本类型作为模板参数,Java却只能接受类作为泛型参数;
    发表于 09-27 16:50 0次下载

    ARM体系结构常用术语解释

    那么A系列的处理器,会有一个相关的术语,这些术语在这里会给大家做一个介绍,大概这些术语要给大家说一下,首先是流水线,流水线就是底层架构的术语
    发表于 02-11 15:16 1次下载
    ARM体系结构常用<b class='flag-5'>术语</b>解释

    怎样在Java实现多继承

    Java是一种面向对象的只允许单继承的语言,那么怎样在Java实现多继承呢? 2 方法 1. 多层继承 如果要直接继承类,子类是不可以直接多继承的,但是可以通过多层继承来实现
    的头像 发表于 02-17 14:55 1035次阅读

    介绍下cpu缓存一致性(MESI协议)

    之前介绍了java并发包的cas原理和java内存模型,这篇我们介绍下cpu缓存一致性原理,可以帮助我们更好的理解cas的底层原理。
    的头像 发表于 06-09 16:01 2912次阅读
    介绍下<b class='flag-5'>cpu</b>缓存一致性(MESI协议)

    javacpu占用过高如何分析

    JavaCPU占用过高是一种常见的问题,需要通过多种方法进行分析和解决。本文将详细介绍JavaCPU占用过高的原因以及如何进行分析和优化。 一、
    的头像 发表于 12-05 11:15 3783次阅读

    Java程序CPU使用率高的原因

    Java程序是一种高级编程语言,由于其跨平台的特性和强大的功能,被广泛应用于服务器端、企业级应用和大数据处理等场景。然而,在某些情况下,我们可能会发现Java程序的CPU使用率异常高,这会导致系统
    的头像 发表于 12-05 11:20 2685次阅读