• 虚拟存储器


    计算机中设置虚拟存储器的目的是扩大用户的编程空间。

    在主存之外增加第二级大容量辅存,页式虚拟存储器把主存和辅存都分成大小相同的页面。

    主存速度快容量小,存放当前正运行的程序;辅存容量大,速度慢,存放暂不使用的程序和数据。

    程序执行过程中需要访问辅存内容,可把包括有关单元的一个虚页面数据调入主存一个空页面中。其后CPU根据程序的局部性原理,可多次从主存这个页面中取出需要的有关指令和数据,大大提高了存取有关数据的速度。

    虚拟存储器的关键是虚存页面调入主存时,CPU如何知道调入主存何页,虚实页面如何实现页面地址转换。页式虚拟存储器在主存中专门设置一个页面对照表。记录每个虚页调入主存时存入的实页面页号及某些特征位,如装入位、修改位等。每个用户应用程序都设有一个页表、页表长度为该程序的虚页数,给出一个虚拟地址(逻辑地址)访问虚拟存储器,首先进行逻辑地址与主存地址(物理地址)的转换。查页表,根据虚页号查页表读出对应行的内容,如该行装入位为1,表明该虚页已调入主存,该行后面的内容即为该虚页调入主存时的实页号,实页号与逻辑地址低位给出的页内地址,即可决定读出的主存单元地址。

    应该指出页表转换是通过读主存实现的,很费时间,但虚拟存储器主要目标是扩大容量,速度慢点影响不大,用软件方法实现也是可以接受的。大多数计算机都是用软件方法实现。

    在要求速度较高的特别场合,也可设置硬件快表。

  • 相关阅读:
    练习:给Keras ResNet50源码加上正则化参数, 修改激活函数为Elu
    凸集,凸函数,凸优化问题。
    Keras用动态数据生成器(DataGenerator)和fitgenerator动态训练模型
    Lagrangian 对偶 和 Slater 条件
    凸集分离定理
    Python 中的 sorted 和 sort的区别
    工作反思
    jemalloc
    libcoap
    dropbear
  • 原文地址:https://www.cnblogs.com/SQP51312/p/6030437.html
Copyright © 2020-2023  润新知