-
列出并简要定义计算机的主要4个部分
-
定义处理寄存器的两种主要类型
-
一般而言,一条机器指令能指定的4种不同操作是什么
-
什么是中断
-
多个中断的处理方式是什么
-
内存层次各个元素间的特征是什么
-
什么是高速缓存
-
多处理器系统何多核系统的区别是什么
-
空间局部性和时间局部性的区别是什么
-
开发空间局部性和时间局部性的策略是什么
答案
-
计算机的主要四个部分为处理器processor、内存main memory、I/O、系统总线system bus
处理器:执行处理数据的功能
内存:存储数据和程序,具有易失性;与之相对应的是磁盘存储器
I/O:在计算机和外部环境之间移动数据
系统总线:在处理器、内存和输入/输出模块间提供通信的设施
(补充:当计算机内只有一个处理器时,也叫做CPU) -
处理寄存器中分为缓冲寄存器和地址寄存器。前者用于数据的交换,后者用于存放地址;
在处理器内部有内存缓冲寄存器、内存地址寄存器、输入/输出缓冲寄存器、输入/输出地址寄存器(指令寄存器,用于存放处理器下一次要取出的指令) -
一条机器指令能指定的4种不同的操作分别是:处理器-存储器、处理器-I/O、数据处理、控制
-
中断是一种提高处理器利用率的方法,主要分为程序中断、时钟中断、I/O中断、硬件失效中断
-
多个中断处理方式:两种方法
第一种方法:在第一个中断发生后,禁止再发生中断;第二种方法:定义中断优先级,允许高优先级中断低优先级中断的运行。 -
存取时间越快,每“位”价格越高
容量越大,每“位”价格越低
容量越大,存取速度越慢 -
利用局部性原理,在处理器和内存之间提供一个容量小且速度快的存储器,称为高速缓存
-
对称多处理器(SMP)是具有如下特点的独立计算机系统
- 具有两个或两个以上可比性能的处理器
- 这些处理器共享内存和I/O设备,并通过总线或其他方式相连,因此每个处理器的访存时间大体相同
- 所有处理器共享对I/O设备的访问,要么通过相同的通道,要么通过可以连接到相同设备的不同通道
- 所有处理器可以执行相同的功能
- 整个系统由一个统一的操作系统控制,该操作系统为多个处理器及其程序提供作业、进程、文件和数据元素等各种级别的交互
多核计算机是指将两个或多个处理器组装在同一块硅上的计算机,又名芯片多处理器。每个核上通常会包含一个独立处理器的所有零部件。
一个例子是英特尔酷睿i7-990X,它拥有4个x86处理器,每个处理器都有其专用的L2高速缓存,所有处理器共享一个L3高速缓存。英特尔使用预取机制使高速缓存更为有效。
-
程序在运行时往往表现出高度的局部性
空间局部性:一旦一个程序指令或存储单元被访问,那么它附近的单元也会很快被访问
时间局部性:一旦一个指令被执行了,在不久的将来,它可能再次被执行
(程序的局部性原理是引入虚拟存储技术的关键。虚拟存储的实现原理是,当进程要求运行时,不是将它全部装入内存,而是将其一部分装入内存,另一部分暂时不装入内存。) -
在硬件层,局部性原理允许计算机设计者通过引入小而快的高速缓存存储器来保存最近被引用的指令和数据项,从而提高对主存的访问速度。
在操作系统级,局部性原理允许系统使用主存作为虚拟地址空间最近被引用块的高速缓存。
类似的,操作系统用主存来缓存磁盘文件系统中最近被使用的磁盘块。
在应用程序的设计,如Web浏览器将最近被请求的文档放在本地磁盘上,利用的就是时间局部性。大容量的Web服务器将最近被请求的文档放在前端磁盘高速缓存中,不需要服务器的干预就可满足对这些文档的请求。