内存虚拟化技术 | 学习笔记

简介: 快速学习内存虚拟化技术 。

开发者学堂课程【虚拟化技术入门内存虚拟化技术】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/374/detail/4697


内存虚拟化技术


内容介绍:

大型操作系统(比如 Linux )的内存管理的内容是很丰富的,而内存的虚拟化技术在 OS 内存管理的基础上又叠加了一层复杂性,比如我们常说的虚拟内存( virtual memory ),如果使用虚拟内存的OS是运行在虚拟机中的,那么需要对虚拟内存再进行虚拟化,也就是 vitualizing virtualized memory 。


一、内存虚拟化挑战面临的挑战

1、操作系统要求内存地址从0开始

2、操作系统要求内存地址是连续的

(1)低段内存连续

(2)连续内存管理更高效

(3)使用 superTLB 加速访问效率

(4)内存重映射技术

image.png

 

二、MMU 虚拟化技术

MMU 是内存管理单元的缩写

1、Direct page table

(1)Guest and Hypervisor 共享页表

(2)广泛应用于 XenLinux32

(3)优点:切换效率高

(4)缺点:安全性必须用过审计保证

2、Virtual TLB

(1)相对简单

(2)只能处理访问过的虚拟地址

(3)效率低

3、Shadow page table

(1)不需要需改内核

(2)效率较低

(3)

4、Extend page table

5、对比

image.png

相关文章
|
2月前
|
KVM 虚拟化
KVM的热添加技术之内存
文章介绍了KVM虚拟化技术中如何通过命令行调整虚拟机内存配置,包括调小和调大内存的步骤,以及一些相关的注意事项。
78 4
KVM的热添加技术之内存
|
3月前
|
存储 Linux 调度
OpenStack如何支持虚拟化技术?
【8月更文挑战第21天】
216 0
|
1月前
|
存储 分布式计算 分布式数据库
云计算和虚拟化技术
云计算是指把计算资源、存储资源、网络资源、应用软件等集合起来,采用虚拟化技术,将这些资源池化,组成资源共享池,共享池即是“云”。
140 64
|
25天前
|
存储 持续交付 虚拟化
|
2月前
|
KVM 虚拟化
虚拟化技术概述及KVM环境安装
关于虚拟化技术概述及KVM环境安装的教程,涵盖了虚拟化的定义、分类、管理工具,以及KVM的系统需求、安装步骤和使用指南。
80 11
虚拟化技术概述及KVM环境安装
|
2月前
ARM64技术 —— MMU处于关闭状态时,内存访问是怎样的?
ARM64技术 —— MMU处于关闭状态时,内存访问是怎样的?
|
3月前
|
Devops 虚拟化 Docker
DevOps 中的标准虚拟化技术
【8月更文挑战第27天】
58 5
|
3月前
|
存储 监控 Linux
在Linux中,如何进行虚拟化技术的应用?
在Linux中,如何进行虚拟化技术的应用?
|
3月前
|
存储 运维 Devops
|
3月前
|
存储 虚拟化 网络虚拟化