虚拟存储器与Cache对比详解

4星 · 超过85%的资源 需积分: 14 16 下载量 22 浏览量 更新于2024-08-02 收藏 631KB PDF 举报
"厦门大学计算机系统结构复习资料,06级同学整理,重点涵盖存储系统、虚拟存储器等方面,旨在帮助复习并确保通过考试。" 在计算机系统结构中,存储系统是一个至关重要的组成部分,它通常由不同速度、容量和价格的存储器构成。存储系统的性能评价指标包括速度、容量和成本。为了提升存储系统的效率,有两种主要策略:第一是提高命中率(Hit Rate),即减少访问主存而非高速缓存的次数;第二是确保各个存储器之间的速度差异不要过大,以避免因等待慢速设备而浪费时间。 在并行访问存储器的设计中,地址通常被划分为两部分,一部分用于定位存储器,另一部分用于选择数据。然而,这种设计可能导致多种访问冲突,如取指令冲突、读操作数冲突、写数据冲突以及读写冲突。这些冲突会降低系统性能,需要通过有效的管理和调度来解决。 虚拟存储器与Cache存储器是两种不同的扩展内存技术。Cache主要目标是提高主存的访问速度,通常由硬件实现,Cache和主存之间有3至10倍的速度差异。而虚拟存储器则主要是为了扩大主存容量,主要通过软件实现,硬件辅助,虚拟存储器与主存速度差距可达10的5次方倍。Cache的页大小通常较小,如16字,而虚拟存储器的页大小通常在1KB到16KB之间。当Cache未命中时,系统会等待主存响应;而虚拟存储器未命中时,系统可能会执行任务切换。对于使用者而言,Cache是透明的,而虚拟存储器对应用程序员来说是透明的,但对系统来说不是。 虚拟存储器的工作原理基于页的概念,将主存、磁盘和虚拟存储器划分为固定大小的页,分别称为实页和虚页。虚拟地址经过一系列地址映射转换后,映射到主存的实际地址。虚拟存储器有三种基本类型:页式、段式和段页式。其中,页式虚拟存储器按固定大小的页进行分配,简单但可能导致内存碎片;段式虚拟存储器允许程序按逻辑段进行组织,易于实现共享、动态链接和信息保护,但地址转换相对复杂且可能效率较低;段页式虚拟存储器结合了两者的优点,但管理更为复杂。 段式虚拟存储器的地址变换涉及到用户号、段号和段内偏移,通过段表查找实际地址。这种方式虽然带来了诸多优点,如模块化编程、共享、动态链接和信息保护,但也存在耗时的地址转换、较低的主存利用率和磁盘管理难题等缺点。相比之下,页式虚拟存储器地址变换更快,但可能难以实现某些高级功能,如动态链接和信息保护。 理解存储系统和虚拟存储器的工作原理及其优化策略,对于深入掌握计算机系统结构至关重要,也是考试复习的重点内容。通过学习这部分知识,可以更好地应对计算机系统结构相关的理论和实践问题。