学习笔记(一):计算机体系架构的术语和基本概念

来源:互联网 发布:刷蓝钻成长值软件 编辑:程序博客网 时间:2024/05/18 03:34

学习<<Computer Organization and Design>>的一些读书笔记:

1. 计算机是由硬件和软件组成的,硬件和软件分布:硬件-系统软件-应用软件,由里到外的顺序分布的。

 

2. 那么刚刚提到了系统软件,系统软件有许多种,其中操作系统和编译程序是必需的

 

3. 操作系统:用户程序和硬件之间的接口   作用:处理基本的输入输出操作:分配外存和内存:为多个应用程序提供共享计算机资源的服务

 

4. 编译程序:把高级语言编写的程序翻译成硬件能执行的指令

 

5. 谈到硬件,首先要谈到电信号的发送:计算机只用两个字母表示:”通“,”断“(0,1)因此计算机语言是二进制数。计算机服从于我们的命令,即指令。

 

6. 指令:是能被计算机识别并执行的位串,可被视为数字

 

7. 由于第一代程序员使用二进制数和计算机通信,十分复杂,设计人员开发了叫汇编程序的软件:程序员发明用于将助记符形式的指令自动翻译成对应的二进制,但是汇编语言要求程序员像计算机一样思考。因此出现了高级编程语言和编译程序:

例如: A+B---编译程序---addA,B---汇编语言---二进制元指令

 

8. 硬件:基本功能:输入数据,输出数据,处理数据,存储数据   

组成计算机的典型部件:输入,输出,存储器,运算器,控制器(运算器和控制器统称为处理器)。

 

9. 打开机箱后,我们会看到: 硬盘驱动,处理器,风扇,内存,电池,主板,DVD驱动

 

10. 主板上的长方块是集成电路,芯片

 

11. 内存:程序运行时的储存空间,由8片集成电路构成。DRAM芯片组成

 

12. DRAM:动态随机访问内存,可随机访问任何地址的内存

 

13. 处理器:包括数据通路和控制器,相当于处理器的肌肉和大脑。数据通路:负责算术运算,控制器:负责指导数据通路,储存器和I/O设备按照程序的指令正确执行。

 

14. CPU内部使用的储存器是缓存:一般作为DRAM的缓冲

 

15. 计算机中的内存是易失性的:主储存器,但是DVD游戏3.机中采用的是非易失性储存器:二级储存器。

 

16. DRAM 1975年在主储存器中占主导地位而磁盘1965年在二级储存器中占主导

 

17. 其他的储存手段:闪存:主要用于手机的一种非易失性储存器

 

磁盘:多个盘片组成,每分钟5400-15000转 盘面涂有磁性材料 为了读写磁盘上信息,有读写头:装有小线圈的活动臂

由于磁盘采用机械部件,访问速度远远低于DRAM, 磁盘为5-20毫秒,DRAM为50-70纳秒,差不多是100000倍, 因此使得磁盘比DRAM便宜得多,因为磁盘储存器的制造成本低于集成电路的制造成本,每GB磁盘价格比DRAM便宜30-100倍。

磁盘和主存有三个主要差别:磁盘非易失(使用磁介质),访问速度慢,每GB价格较低

试图有人想制造新的储存技术,比DRAM价格低,比磁盘速度快,但是都失败了

目前闪存是一个有力挑战者,属于半导体储存器,像硬盘一样是非易失的,速度比磁盘快100-1000倍。但是闪存具有写100000-1000000次后老化损坏的特点所以必须记录写操作的数目,而且具备避免储存器损坏的策略。

 

其他的外存技术:光盘CD,DVD,蓝光

基于闪存的可移动储存卡,通常采用USB接口

 

磁带

光盘的工作原理:在表面烧制小坑的方法来记录数据,读取CD时,用激光照射CD表面,通过检验反射光来判定该处是坑害是平面,DVD采用同样技术,只不过激光可以聚焦多层,并大大减少每个坑的面积,从而具有更大的容量,蓝光使用波长更短的激光进一步压缩每个坑的面积,从而增加储存的容量。

 

18. 与其他计算机通信

与其他计算机通信的优点:在计算机之间高速交换信息;有些I/O设备可以由网络上的计算机共享,不必每台计算机都配备;远距离访问等等。

 

19. 处理器和储存器制造技术:

晶体管:一种受电流控制的开关

集成电路:成千上万个晶体管组成的芯片,简称VLSI

 

20. 性能:如果性能用时间来度量,完成同样计算任务需要时间最少的计算机是最好的,最季节的时间单位是wall clock time,墙上时钟时间,也叫响应时间。

有时一个处理器需要同时运行几个程序,这是系统可能侧重于优化吞吐率而不是响应时间。因此我们要把运行自己任务的时间和响应时间区分开来。因此我们可以用CPU执行时间(只表示在CPU上花费的时间)。CPU时间还可以分为用户程序的时间和操作系统为用户服务花去的时间,前者为用户CPU时间,后者称为系统CPU时间。

 

21. CPU的性能及其影响的因素

我们可以用一个简单的公式将最基本的尺度和CPU时间联系起来:

一个程序的CPU执行时间=一个程序的CPU时钟周期数 * 时钟周期时间

由于时钟频率和时钟周期时间互为倒数,所以:

一个程序的CPU执行时间=一个程序的CPU时钟周期数 / 时钟频率

说完了CPU的性能之后,我们就要涉及到指令的性能了,因为上述的性能公式每首涉及到程序所需的指令数。由于计算机是通过执行指令来运行程序的,执行时间一定和指令数有很大关系,所以

CPU时钟周期数=程序的指令数 * 每条指令的平均时钟周期数

术语CPI(clock cycles per instruction)就是用来表示执行每条指令所需的时钟周期数的平均值。那么用上述的几个公式,我们就可以解决许多问题(运用公式之间的转换)。

还有一点要提到的就是:CPU性能和CPU的执行时间是成反比所以执行时间越短的CPU性能越好。

 

22. 经典的CPU性能公式

由于有了上述的公式我们可以写出基本的性能公式:

CPU时间=指令数 * CPI * 时钟周期时间,同理:

CPU时间=指令数 * CPI / 时钟频率

现在我们来看看一些性能指标和它们的测量单位:

程序的CPU执行时间:程序执行的秒数

指令数:程序执行的指令数

CPI : 每条指令的平均时钟周期数

时钟周期时间:每时钟周期的秒数




原创粉丝点击