存储管理 机器设计的一个驱动原则是保持所有计算机资源尽可能 多地被使用,中心冲突是: CPU中的操作是纳秒级(一个操作10-50n) 访问主存是是微秒级(0.1~0.2微秒,100200ns) 外部数据操作是毫秒级(15-30毫秒) 这样在内外速度间相差1000,000倍 为了平衡速度差异,各种存储管理机制是必须的。 1、在最简单的设计(如低价PC)中,只有简单的存 储管理设施。程序和数据执行时驻留内存,在一个时 刻只有一个程序准备执行。虽然CPU必须等待数据, 它也是价格有效的,因为不需加入附加硬件
•存储管理 机器设计的一个驱动原则是保持所有计算机资源尽可能 多地被使用,中心冲突是: CPU中的操作是纳秒级(一个操作10—50ns) 访问主存是是微秒级(0.1~0.2微秒,100—200ns) 外部数据操作是毫秒级(15—30毫秒) 这样在内外速度间相差1000,000倍。 为了平衡速度差异,各种存储管理机制是必须的。 1、在最简单的设计(如低价PC)中,只有简单的存 储管理设施。程序和数据执行时驻留内存,在一个时 刻只有一个程序准备执行。虽然CPU必须等待数据, 它也是价格有效的,因为不需加入附加硬件
2、为加速外部数据访问和CPU间的平衡,操作系统 常使用多道程序设计,当等待毫秒去读数据时,计算 机将执行另一个程序。为了保证多个程序同时驻留主 存,通常有硬件设施负责页面査找或动态程序重定位, 页面査找通过预测进行,预测在最近将来最可能使用 的页面,将其放入主存。如在主存,则程序执行,否 则,出现页间错,操作系统将从外存中读取所需页, 同时执行别的程序。 3、为加速主存和CPU间的不平衡,常使用 Cache存储 器(小的高速数据存储)。 Cache可允许计算机操作, 好象主存具有和CPU相同速度,通常是K到256K字 节,32K的 Cache,可达到95%的选中率
2、为加速外部数据访问和CPU间的平衡,操作系统 常使用多道程序设计,当等待毫秒去读数据时,计算 机将执行另一个程序。为了保证多个程序同时驻留主 存,通常有硬件设施负责页面查找或动态程序重定位, 页面查找通过预测进行,预测在最近将来最可能使用 的页面,将其放入主存。如在主存,则程序执行,否 则,出现页间错,操作系统将从外存中读取所需页, 同时执行别的程序。 3、为加速主存和CPU间的不平衡,常使用Cache存储 器(小的高速数据存储)。Cache可允许计算机操作, 好象主存具有和CPU相同速度,通常是1K到256K字 节,32K的Cache,可达到95%的选中率
操作环境 计算机的操作环境通常包括外围存储器和I/O设备,这些 设备表示了计算机的外部世界,和计算机的任何通讯必 须通过它们。 操作环境中通常有硬件的不同,如:髙速存储(扩展内 存),中速存储(磁盘),低速存储(磁带)和IO设备 各种计算机体系结构 计算机硬件的组织有多种形式,上面的讨论是基于Von Neuman体系结构。 Von neumann体系结构 命名来源于数学家 John von neumann,他在40年代开 发这个初始设计,作为 ENIAC计算机设计的一部分, 现今计算机仍属此体系结构
•操作环境 计算机的操作环境通常包括外围存储器和I/O设备,这些 设备表示了计算机的外部世界,和计算机的任何通讯必 须通过它们。 操作环境中通常有硬件的不同,如:高速存储(扩展内 存),中速存储(磁盘),低速存储(磁带)和I/O设备。 •各种计算机体系结构 计算机硬件的组织有多种形式,上面的讨论是基于Von Neumann体系结构。 Von Neumann体系结构: 命名来源于数学家John von Neumann,他在40年代开 发这个初始设计,作为ENIAC计算机设计的一部分, 现今计算机仍属此体系结构
多处理器: Von neumann设计的最大问题是外部数据设备的慢速 和CPU寄存器高速间的矛盾。解决方案之一是在指定 系统中使用多个CPU,这样的多处理系统已使用了30 多年,通过几个相对不昂贵的CPU的粘合,再加上单 一的主存、磁盘、磁带等,得到一个高效系统。操作 系统将不同程序运行于不同CPU上,从而整个性能得 到改善。 语言和系统设计正在演化,使得能够书写程序在多个 计算机上执行并相互通讯
多处理器: Von Neumann设计的最大问题是外部数据设备的慢速 和CPU寄存器高速间的矛盾。解决方案之一是在指定 系统中使用多个CPU,这样的多处理系统已使用了30 多年,通过几个相对不昂贵的CPU的粘合,再加上单 一的主存、磁盘、磁带等,得到一个高效系统。操作 系统将不同程序运行于不同CPU上,从而整个性能得 到改善。 语言和系统设计正在演化,使得能够书写程序在多个 计算机上执行并相互通讯
计算机状态 对计算机静态组织的了解只是一个部分,全面了解则涉 及计算机在程序执行时的动态操作,包括: 执行开始时各存储部件的内容,操作执行顺序。 执行进行时如何修改各种数据部件,程序执行的最后 结果等 通常对计算机动态行为的观察是通过计算机状态(执行 过程中某点主存、寄存器和外存的内容决定)的概念。 程序的执行体现为一系列状态的变化 初始状态通过一系列状态变迁(从当前状态通过存贮内 容的修改进入新的状态),得到最终状态 如果我们可以预测状态变迁序列,则可以声称了解了计 算机的动态行为
•计算机状态 对计算机静态组织的了解只是一个部分,全面了解则涉 及计算机在程序执行时的动态操作,包括: 执行开始时各存储部件的内容,操作执行顺序。 执行进行时如何修改各种数据部件,程序执行的最后 结果等。 通常对计算机动态行为的观察是通过计算机状态(执行 过程中某点主存、寄存器和外存的内容决定)的概念。 程序的执行体现为一系列状态的变化 初始状态通过一系列状态变迁(从当前状态通过存贮内 容的修改进入新的状态),得到最终状态。 如果我们可以预测状态变迁序列,则可以声称了解了计 算机的动态行为