从计算机语言的角度,把计算机系统按功能划分成多级层次结构。
由软件实现的机器。
语言实现的一种基本技术。每当一条N+1级指令被译码后,就直接去执行一串等效的N级指令,然后再去取下一条N+1级的指令,依此重复进行。
语言实现的一种基本技术。先把N+1级程序全部变换成N级程序后,再去执行新产生的N级程序,在执行过程中N+1级程序不再被访问。
程序员所看到的计算机的属性,即概念性结构与功能特性。
计算机系统中软、硬件界面的确定,其界面之上的是软件的功能,界面之下的是硬件和固件的功能。
在计算机技术中,对本来存在的事物或属性,但从某种角度看又好象不存在的概念称为透明性。
计算机系统的逻辑实现。
计算机系统的物理实现。
冯氏分类法是用系统的最大并行度对计算机进行分类。它是由冯泽云先生于1972年提出的。
计算机系统在单位时间内能够处理的最大的二进制位数。可以用平面直角坐标系中的一个点代表一个计算机系统,其横坐标表示字宽(n位),纵坐标表示一次能同时处理的字数(m字)。m×n就表示了其最大并行度。
按照指令流和数据流的多倍性进行分类,它是M.J.Flynn于1966年提出的。
机器执行的指令序列。
由指令流调用的数据序列。
在系统受限的部件上,同时处于同一执行阶段的指令或数据的最大数目。
对于大概率事件(最常见的事件),赋予它优先的处理权和资源使用权,以获得全局的最优结果。
对系统中的某些部件进行改进,改进后的系统性能与改进前的系统性能之比。
加快某部件执行速度所获得的系统性能加速比,受限于该部件在系统中所占的重要性。
在改进前的系统中,可改进部分的执行时间在总的执行时间中所占的比例。
可改进部分改进以后性能提高的倍数。它是改进前所需的执行时间与改进后执行时间的比。
程序在执行时所访问地址的分布不是随机的,而是相对地簇聚;这种簇聚包括指令和数据两部分。
程序即将用到的信息很可能就是目前正在使用的信息。
程序即将用到的信息很可能与目前正在使用的信息在空间上相邻或者临近。
程序执行的CPU时间= CPI ´ IC / 时钟频率
程序执行过程中所处理的指令数。
反映了计算机指令集的结构和编译技术。
指令时钟数。
CPI = 总时钟周期数 / IC
反映了计算机实现技术、计算机指令集的结构和计算机组织。
从事件开始到结束之间的时间,也称为执行时间。即计算机完成某一任务所花费的全部时间,包括访问磁盘、访问存储器、输入/输出、操作系统开销等。
在单位时间内所能完成的工作量。
CPU为用户程序工作的时间,不包含I/O等待时间及运行其他程序的时间。可细分为用户CPU时间及系统CPU时间。
由从真实程序中提取的较短但很关键的代码构成。
通常是指代码在几十行到100行的具有一些特定目的的测试程序。用户可以随时编写一些这样的程序来测试系统的各种功能,并产生用户已预知的输出结果,如皇后问题、迷宫问题、快速排序、求素数、计算π等。
首先对大量的应用程序中的操作进行统计,得到各种操作比例,再按这个比例构造测试程序。Whetstone与Dhrystone是最流行的合成测试程序。
为了能比较全面地反映计算机在各个方面的处理性能,通常采用整套测试程序。这组程序称为基准测试程序套件,它是由各种不同的真实应用程序构成的。目前最成功和最常见的测试程序套件是SPEC系列。
主要测试在线事务处理(On-LineTransaction Processing,OLTP)系统的性能,包括数据库访问和更新等。
冯·诺依曼结构计算机
程序控制(程序等待、程序中断)、DMA、通道、I/O处理机
可按内容访问的存储器。
以相联存储器为核心的处理机。相联存储器除了完成信息检索任务外,还能进行一些算术逻辑运算。
由同一厂家生产的具有相同的系统结构,但具有不同组成和实现的一系列不同型号的机器。
同一个软件可以不加修改地运行于系统结构相同的各档机器,而且它们所获得的结果一样,差别只在于运行时间不同。
不同厂家生产的具有相同系统结构的计算机。
按某档计算机编制的程序,不加修改的就能运行于比它高(低)档的计算机。
按某个时期投入市场的某种型号机器编制的程序,不加修改地就能运行于在它之前(后)投入市场的机器。
用软件的方法在一台现有的机器(称为宿主机host)上实现另一台机器(称为虚拟机)的指令集。
用一台现有机器(称为宿主机)上的微程序去解释实现另一台机器(称为目标机)的指令集。
在同一时刻或是同一时间间隔内完成两种或两种以上性质相同或不相同的工作。只要时间上互相重叠,就存在并行性。
两个或多个事件在同一时刻发生的并行性。
两个或多个事件在同一时间间隔内发生的并行性。
每次只对一个字的一位进行处理。这是最基本的串行处理方式。
同时对一个字的全部位进行处理,不同字之间是串行的。
同时对许多字的同一位(称为位片)进行处理。
同时对许多字的全部位或部分位进行处理。
单条指令中各微操作之间的并行。
并行执行两条或两条以上的指令。
并行执行两个或两个以上的线程,通常是以一个进程内派生的多个线程为调度单位。
并行执行两个或两个以上的过程或任务(程序段),以子程序或进程为调度单元。
并行执行两个或两个以上的作业或程序。
多个处理过程在时间上相互错开,轮流使用同一套硬件设备的各个部分,以加快硬件周转而赢得速度。
通过重复设置资源,尤其是硬件资源,大幅度提高计算机系统的性能。
是一种软件方法,它使多个任务按一定时间顺序轮流使用同一套硬件设备。
由多个同类型,至少担负同等功能的处理机组成,同时处理同一作业中能并行执行的多个任务。
由多个不同类型,至少担负不同功能的处理机组成,按照作业要求的顺序,利用时间重叠原理,依次对它们的多个任务进行加工,各自完成规定的功能动作。
把若干台具有独立功能的处理机(或计算机)相互连接起来,在操作系统的全盘控制下,统一协调地工作,而最少依赖集中的程序、数据或硬件。
反映多机系统各机器之间物理连接的紧密程度和交互作用能力的强弱。
通过通道或通信线路实现计算机间互连,共享某些外围设备,机间的相互作用是在文件或数据集一级进行。
机间物理连接的频带较高,它们往往通过总线或高速开关实现互连,可以共享主存。