fyb_main2 fyb_main2
那个...说些什么好呢?我就是人,我就是人!hehe...(是跟人中间省略了好多好多字呵)
关注数: 314 粉丝数: 250 发帖数: 9,525 关注贴吧数: 337
关于熔断(Meldown) 闲得没事干,写了个这: 1.分支预测 程序:这道题的答案如果是1,就执行A,不是1就执行B。 cpu:大哥,那么多运算器闲着呢,非给我来个分支,等等,我记得前几次执行到这儿的时候,都是执行的A,唉干脆我就先看看A再说。现在的状态记一下,不对的话再重新来。 2.保护模式 程序:先算这道题,然后调用操作系统的显示功能,接着再算这道题。 cpu:遵命。 程序:然后我要看一下系统里面存的一个密码…… cpu:保护错误,操作系统你来收拾一下这个捣乱的。 3.高速缓存(Cache) 程序:(拿出一张纸)这上面这几个地方的数据我看一下。 cpu:去内存跑一趟?**这么远…… cpu:(很久以后)终于找到了……哎呦累死了……这几个数据你以后应该还经常用吧,那干脆先放我这儿得了,省得我以后又跑一趟。我这儿放不下再给你放回去。 4.Meltdown 攻击者:操作系统啊,我要是有什么对不住的,你别立马给我退出,通知我一下让我显示个错误窗口,也好让用户明白嘛。 操作系统:行吧。 攻击者:啊,先读一下从xxx到xxx这么一大片内存,接着我要看一下系统里面某个密码,然后如果大于127就读一下A那个位置,不然就读一下B那个位置。 cpu:哎呦,这什么古怪程序。先读一大堆内存…… cpu:(一千年以后)woc高速缓存都让你占满了,马上读完了,我先看看后面指令,额,那个密码,我看看,是xxx,然后如果…… 保护部件:你等等啊,还没判断那个位置是不是受保护的啊。 cpu:唉急什么,反正出了事是要回滚重来的,如果真的没有权限,这小子最终是得不到这个信息的。 保护部件:emmmmmm…… cpu:嗯接着……它确实大于127,那就读A,**高速缓存刚才被他全填上那一堆内存了,我提前去把A拿进高速缓存吧。 cpu:诶,轮到那条没判断权限的指令了,看一下,**……原来你没权限啊,来,操作系统呢…… 操作系统:哦,它刚才说过自己处理这个错误了来着,给它自己处理吧。 攻击者:好啊,嗯,我先访问一下A和B这两个位置吧……哦对了,你有个超高精度的计时器吧,给我看看? cpu:咳,不就是想测测我性能嘛,来,尽管来看我风骚的速度吧…… cpu:(很快)唉还好我刚才已经把A放进缓存了,快不快?这下在内存只要拿B就行了。 cpu:(很慢)哎呦,内存跑一趟还真是不容易,B到手了(一脸得意)快不快? 攻击者:(看着自己手中的高精度秒表,一脸淫笑)是是是……蓝厂牙膏,天下第一。
1 下一页