论文部分内容阅读
随着计算技术的高速发展,处理器的计算能力持续高速增长,虚拟化技术在计算机系统中的作用日益重要。内存作为计算机系统的宝贵资源,内存虚拟化是虚拟化技术中至关重要的一方面。现有的基于软件的内存虚拟化技术如影子页表、MMU类虚拟化等技术都获得了广泛的应用。而随着工艺的进步,越来越多的虚拟化功能被集成到处理器内部,内存虚拟化技术在有处理器支持的情况下又有新的实现方法和挑战。 本文的研究源自“低辐射空间环境下商用多核处理器层次化软件容错技术研究”课题。课题选用UltraSPARC T2处理器作为硬件平台,VxWorks作为目标操作系统。UltraSPARC T2是一款运算能力非常强大的多核处理器,处理器内实现了丰富的虚拟化支持。VxWorks是一款具有高时实性。高可靠性的嵌入式实时操作系统,可以快速的响应外部事件,具有很高的实时性,被广泛应用于航天领域。为了合理利用UltraSPARC T2的运算能力,对VxWorks添加虚拟化支持,以达到多个操作系统对UltraSPARC T2处理器的共用是很有意义的。 本文主要研究UltraSPARC T2平台的内存虚拟化技术及如何使VxWorks操作系统能够支持该内存虚拟化技术。为此本文首先详细分析了UltraSPARC T2的内存管理单元及VxWorks的内存管理方法。UltraSPARC T2的内存管理单元在硬件层次对内存虚拟化提供了支持,详细了解UltraSPARC T2的内存管理单元是研究内存虚拟化的基础。分析VxWorks的内存管理是实现VxWorks对内存虚拟化支持的基础。然后本文详述了UltraSPARC T2内存虚拟化的实现及VxWorks为支持该虚拟化技术所需的修改。 最后本文通过实验对UltraSPARC T2的内存虚拟化技术引入的代价作了评测,实验证明该虚拟化技术具有很小的性能开销。