1.计算机体系结构整体概要:
基于Hadoop和Spark的云计算模型分析比较,Spark集群cache失效,集群本身对于内存的需求较大,以及云计算对于虚拟化的特殊需求,核心理念:大型服务器公司对于硬件的虚拟化,以改变软件的透明度;
大型互联网公司对于大数据服务器核心技术的高度重视,服务器本地数据和远程数据区别,本地运行和虚拟机运行区别;
System概念,软件和硬件两个组成部分,核心理念:指令集是计算机整个体系结构设计的核心,而指令集本身蕴藏着巨大的商业价值;后面第2个专题部分还对ARMv7指令集和ARMv8指令集做了专门的比较分析,重点侧重与讲解指令集Acchitecture应该重点关注和必须考虑到的问题;
网卡发送数据报流程,从计算机体系结构内部,到虚拟机网卡共享,一直到tcp/ip socket 接口实现数据传输的整个流程的讲解,自上而下,由里及外了解计算机体系结构及其工作流程;
其他概念,诸如北桥芯片和南桥芯片的时空布局,服务器风扇耗电,散热的监控方案和解决方案以及成本考虑;服务器的时空布局,机柜的可扩展架构,核心理念:服务器业界对于“可以根据不同应用需求而动态时实配置真实存在,区别与虚拟化的服务器技术”的终极目标的追求与角逐。
2.指令集的设计与精简指令集的五级流水线:
指令集是软件的接口,是软硬件的接口,指令集本身的商业利益,以及兼容性问题。
Armv7与Armv8体系结构区别,演绎,与过渡:指令集:实现32位向64位的过渡;
寄存器个数:15个向31个寄存器的转变;支持的地址长度:32位向64位的转变。
Arm和Intel 服务器方向领域的对比与角逐:前者注重于嵌入式方向,后者注重服
务器方向,而服务端市场,后者先驱,前者只是牛刀初试者,而Armv7向Armv8的过渡,则实现了Arm由嵌入式端向服务器端的转变。
CISC 与RISC孰优孰劣的问题:单纯的说明哪个指令集好,哪个指令集差,都是不
完整的,intel 采用的是复杂指令集,但是具体到单个的指令却用的是精简指令集
设计理念;
Armv8指令集的新特点:pc只有执行跳转指令才能进行跳转,摒弃了条件跳转,从而维持ARM指令本身高效,保频的特点;
仅load指令和store指令实现访存,一个load /store 最多支持两个数据;Arm 函数本身对于 load pare 和 store pare 的支持。
3、函数调用与指令之间的关系:
函数调用包括两个组成,即主函数和被调函数;主要考虑三个问题,即主函数如何向被调函数传参问题,被调函数如何返回执行的结果,主函数递归调用被调函数过
中如何保留上下信息;
寄存器的使用:约定先必须初始化,然后才能调用;其中R0-R7传递参数,R8:返回调用结果;超8的就是变参寄存器,X9-X15为自定义寄存器,X19-X28:stack保存。
一个简单的函数调用实例指令分析过程。