Xen虚拟地址转换
来源:互联网 发布:poser人体造型软件 编辑:程序博客网 时间:2024/06/06 10:39
Xen引入伪物理地址后,仅仅依靠硬件MMU的分页单元是很难实现虚拟地址到机器物理地址的转换的,因此Xen提供了两种地址转换方法。
1) 直接模式,即Guest OS使用自己的页表直接访问机器内存。在该模式下,Xen需要改写Guest OS内核中对页表的访问及TLB的操作函数,利用Hypercall交由Xen来完成MMU的特权操作。
2)影子模式,即由Guest OS维护它们自己的页表,而Xen则为每个Guest OS页表设置一个影子页表。通过Guest OS页表和影子页表之间的同步使得两者之间的地址转换关系保持一致,在Guest OS进行地址转换时,影子页表通过相应的操作完成真正意义上的转换。
直接模式
在直接模式中,为了让Guest OS能在硬件MMU的帮助下,使用自己的页表直接访问机器内存,在页表中的页表项保存的地址都是机器地址,即通过MMU的分页单元的地址转换可以直接获得内存页的机器物理地址。而在Guest OS的使用过程中,Guest OS不能直接使用机器物理地址,它操作的地址是伪物理地址,因此在MMU的分页单元之外,Guest OS需要在M2P表和P2M表的帮助下完成机器物理地址和伪物理地址之间的转换。 在Xen系统中,Guest OS对其页表不能直接进行写操作,而必须在Xen对其写操作进行确认后才被允许执行,因为在直接模式中,Guest OS页表中的页表项都是机器物理地址,若没有相应的机制限制Guest OS对页表的写操作,很可能会因其在页表中填入不属于自己的机器物理地址而使系统产生内存使用错误。因此,对于写操作,Xen必须先对其进行确认,在确保不会产生内存越界后才会被执行。
阅读全文
0 0
- Xen虚拟地址转换
- 虚拟地址转换成物理地址
- 虚拟地址转换为物理地址
- Linux 虚拟地址 物理地址 转换
- VirtualBox虚拟磁盘转换成xen可用的格式
- Xen空间中各种地址之间的转换关系
- linux xen 虚拟windows2003
- Xen的虚拟网络设备
- Xen虚拟化
- XEN虚拟CPU管理
- XEN虚拟CPU管理
- XEN虚拟CPU管理
- XEN虚拟CPU管理
- XEN 虚拟化
- XEN虚拟CPU管理
- 读书笔记---xen虚拟化
- Xen虚拟化--介绍
- Xen虚拟化技术
- ORACLE Unit05 视图、序列、索引 、 约束
- Oracle那些事(11)-SQL单表查询
- 21. 吃货续
- Android Studio安装教程
- error C2065: 'AfxGetFileName' : undeclared identifier
- Xen虚拟地址转换
- 大数题目
- HEVC函数入门(2)——帧内编码一个CU
- 【c++】简单异常处理笔记
- 读《李善友:你与高手的距离,并非只差了一万小时练习》有感
- 关于linux系统环境变量的一点理解
- 51nod 1577 异或凑数
- 22. 序列划分
- Web Worker 调用Ajax