文章目录
qemu的内存管理有几个重要的数据结构:
- AddressSpace
- MemoryRegion
- FlatRange
- MemoryRegionSection
- MemoryListener
- FlatView
抛开数据结构不谈,主要是一些链表和树的增删改查和回调操作。
物理内存编址方式
物理内存有两种寻址方式,对应两种指令集:
- MEM寻址。通过CPU地址总线访问。
- IO寻址。通过out/in指令集,使用单独的IO总线访问。
两种编址方式,起始地址都是从0开始。互不冲突。
MEM寻址
可以看作是物理内存的布局。
hao@ubuntu:~/test$ sudo cat /proc/iomem
00000000<