计算机知识

高级语言是针对汇编语言的,汇编语言可以理解为计算机机器语言,所以我们的代码都会被解释成汇编指令,而后交给计算机执行。
高级语言==》编译器(解释器)==》机器语言

cpu和内存是计算机的核心,内存存放指令,cpu通过总线逐条执行,不断的运算返回,取完为止。
在这里插入图片描述
cpu的相比内存来说非常快,所以cpu在内存读取指令的时候可以是并行的,这样会引发数据并发安全问题,缓存一致性协议保证多核心里的缓存行数据一致性问题,总线锁是最后保障。MESI做不到实时,volatile可以保证其他cpu马上读取新数据,volatile底层实现时lock addl,后面是空指令(+0),lock指令后必须有指令(要不然为啥上锁呢?),保证了数据可见性和有序性。
执行顺序:
cpu内存读取指令(L1 - L3cache)
将读取到的数据放入寄存器
PC计数器存放下一条指令
将寄存器中的数据放入ALU计算(速度超级快)
cpu将计算之后将结果返回
线程撕裂者
我们知道每个核心每次只能执行一个线程,但是ALU速度超级快,这样就造成了ALU计算资源浪费,存在一种线程撕裂者,即每个核心,将PC计数器和Registers寄存器分成两组,对应一个ALU,这样ALU在计算的时候在核心内切换即可,就不用每次访问内存==》2核心4线程/4核心8线程。。。。。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值