【计算机系统】CPU 架构architectures


Spectre vulnerability(幽灵漏洞)

201X的大部分安全隐患都来自于cpu而不是软件bug

cpu漏洞来自于推测执行(亦作预测执行投机性执行,英语:Speculative execution

是优化技术的一类,采用这个技术的计算机系统会根据现有信息,利用空转时间提前执行一些将来可能用得上,也可能用不上的指令。如果指令执行完成后发现用不上,系统会抛弃计算结果,并回退执行期间造成的副作用(如缓存)。

推测执行的目标是在处理器系统资源过剩的情况下并行处理其他任务。推测执行无处不在。

举例

假设某程序的结构如下:

从网络上下载一个数据A,耗时30秒。

如果下载A成功,则直接给出A的答案。

如果下载A失败,则计算30秒的算数B,并给出这个答案。

如果没有推测执行功能,那么当A下载后发现失败,那么就要再花30秒做算术B,总共耗时1分钟。但是,由于下载过程中CPU是空转,CPU可以认识到反正闲着也是闲着,不如暂时把A当作失败,并根据此提前算出B。这样如果将来需要到B,就节省了30秒的时间。就算不需要,也没有浪费处理器时间。

代码中的变量Variables in compiled code

c语言的变量存在内存里

C variables are stored in RAM

– RAM is a huge 1-D array of bytes

– We need to keep track of where in RAM each variable is kept

– -4(%rbp) means “four bytes before the location pointed to by rbp

汇编语言有自己的变量,不是在内存里的

Assembly language has its own named variables, not in RAM

– “Registers”

– Start with % in x86 assembly language

Special registers

– Program counter = location of the currently executing command

– Flags = many binary values like “last operation produced zero”

冯•诺依曼计算机 【von Neumann machine】 

使用冯诺依曼体系机构的电子数字计算机。1945年6月,冯•诺依曼提出了在数字计算机内部的存储器中存放程序的概念(Stored Program Concept),这是所有现代电子计算机的范式,被称为“冯• 诺依曼结构”,按这一结构建造的电脑称为存储程序计算机(Stored Program Computer),又称为通用计算机。冯•诺依曼计算机主要由运算器、控制器、存储器和输入输出设备组成,它的的特点是:程序以二进制代码的形式存放在存储器中;所有的指令都是由操作码和地址码组成;指令在其存储过程中按照执行的顺序;以运算器和控制器作为计算机结构的中心等。冯诺依曼计算机广泛应用于数据的处理和控制方面,但是存在一些局限性。



机器语言 machine code


Phases of executing an operation


Buffer overflow


RISC与CISC比较

指令的强弱是CPU的重要指标,指令集是提高微处理器效率的最有效工具之一。从现阶段的主流体系结构讲,指令集可分为复杂指令集(CISC)和精简指令集(RISC)两部分。相应的,微处理随着微指令的复杂度也可分为CISC及RISC这两类。

CISC是一种为了便于编程和提高记忆体访问效率的晶片设计体系。在20世纪90年代中期之前,大多数的微处理器都采用CISC体系——包括Intel的80x86和Motorola的68K系列等。 即通常所说的X86架构就是属于CISC体系的。 RISC是为了提高处理器运行的速度而设计的晶片体系。它的关键技术在于流水线操作(Pipelining):在一个时钟周期里完成多条指令。而超流水线以及超标量技术已普遍在晶片设计中使用。RISC体系多用于非x86阵营高性能微处理器CPU。像HOLTEK MCU系列等。 ARM ( Advanced RISC Machines ),既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。而ARM体系结构目前被公认为是业界领先的32 位嵌入式RISC 微处理器结构。 所有ARM处理器共享这一体系结构。 因此我们可以从其所属体系比较入手,来进行X86指令集与ARM指令集的比较。

CISC

1.CISC体系的指令特征 使用微代码。指令集可以直接在微代码记忆体(比主记忆体的速度快很多)里执行,新设计的处理器,只需增加较少的电晶体就可以执行同样的指令集,也可以很快地编写新的指令集程式。 庞大的指令集。可以减少编程所需要的代码行数,减轻程式师的负担。高阶语言对应的指令集:包括双运算元格式、寄存器到寄存器、寄存器到记忆体以及记忆体到寄存器的指令。

2.CISC体系的优缺点 优点:能够有效缩短新指令的微代码设计时间,允许设计师实现CISC体系机器的向上相容。新的系统可以使用一个包含早期系统的指令超集合,也就可以使用较早电脑上使用的相同软体。另外微程式指令的格式与高阶语言相匹配,因而编译器并不一定要重新编写。 缺点:指令集以及晶片的设计比上一代产品更复杂,不同的指令,需要不同的时钟周期来完成,执行较慢的指令,将影响整台机器的执行效率。

RISC

1.RISC体系的指令特征 精简指令集:包含了简单、基本的指令,透过这些简单、基本的指令,就可以组合成复杂指令。 同样长度的指令:每条指令的长度都是相同的,可以在一个单独操作里完成。 单机器周期指令:大多数的指令都可以在一个机器周期里完成,并且允许处理器在同一时间内执行一系列的指令。

2.RISC体系的优缺点 优点:在使用相同的晶片技术和相同运行时钟下,RISC系统的运行速度将是CISC的2~4倍。由于RISC处理器的指令集是精简的,它的记忆体管理单元、浮点单元等都能设计在同一块晶片上。RISC处理器比相对应的CISC处理器设计更简单,所需要的时间将变得更短,并可以比CISC处理器应用更多先进的技术,开发更快的下一代处理器。 缺点:多指令的操作使得程式开发者必须小心地选用合适的编译器,而且编写的代码量会变得非常大。另外就是RISC体系的处理器需要更快记忆体,这通常都集成于处理器内部,就是L1 Cache(一级缓存)。 综合上面所述,若要再进一步比较CISC与RISC之差异,可以由以下几点来进行分析:

RISC good for low-power

– Compare mobile phone size and chare life to a notebook

• CISC good for backward compatibility

– Microcode hides the details of architectural changes

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,001评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,210评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,874评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,001评论 1 291
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,022评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,005评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,929评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,742评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,193评论 1 309
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,427评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,583评论 1 346
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,305评论 5 342
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,911评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,564评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,731评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,581评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,478评论 2 352

推荐阅读更多精彩内容