Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1255671
  • 博文数量: 494
  • 博客积分: 161
  • 博客等级: 入伍新兵
  • 技术积分: 5084
  • 用 户 组: 普通用户
  • 注册时间: 2011-07-01 07:37
个人简介

只有偏执狂才能生存

文章分类

全部博文(494)

文章存档

2016年(10)

2015年(112)

2014年(69)

2013年(275)

2012年(28)

分类: LINUX

2013-06-18 15:20:47

?  kvm

所属文件:/include/linux/kvm_host.h

结构描述: VM控制块数据结构

包含结构:kvm_vcpus*[], kvm_arch

?  kvm _arch

所属文件:/include/asm-x86/kvm_host.h

结构描述: 除去CPU之外的一些体系相关硬件设备,如mmu,ioapic, pic等结构

包含结构:kvm_ioapic*

?  kvm_vcpu

所属文件:/include/linux/kvm_host.h

结构描述: 抽象host cpu的数据结构

包含结构:kvm_vcpu_arch, kvm *

?  kvm_vcpu_arch

所属文件:/include/asm-x86/kvm_host.h

结构描述: 保存cpu体系结构相关的状态,如用户寄存器、系统寄存器、pending异常也暂存在这里

包含结构:kvm_mmu, kvm_lapic*

?  kvm_ioapic

所属文件:x86/ioapic.h

结构描述: 在SMP系统中,一般不用8259而用APIC。连接各个外设的是IOAPIC,一般PC只有一个IOAPIC;但是,每个CPU都有一个LAPIC(local)。IOAPIC有redirect表,根据某种模式将物理中断转发给一个或多个LAPIC。kvm_ioapic就是虚拟机的IOAPIC设备模拟的结构,其中包含一个kvm*,指向它所属的虚拟机的控制块结构。另一方面,kvm_arch中有一个kvm_ioapic*,指向此虚拟机所有的模拟IOAPIC结构。

包含结构:irq_states[], kvm_ioapic_redirect_entry[], kvm_io_device, kvm*

?  kvm_lapic

所属文件:x86/lapic.h

结构描述: 每个CPU都有一个lapic,所以模拟的lapic也是每个vcpu对应一个。在kvm_lapic中有一个kvm_vcpu*,指向所属的vcpu;另一方面,kvm_vcpu_arch中有一个kvm_lapic*,指向vcpu所有的模拟LAPIC结构。

包含结构:kvm_io_device, kvm_vcpu*, kvm_timer

 

?  kvm_main.c

所在目录:/x86

文件描述:实现KVM核心接口服务函数,用户空间调用接口发送的请求由这些函数来处理

?  kvm_vm_ioctl()

函数描述:处理ioctl命令

?  kvm_vm_ioctl_create_vcpu()

函数描述:创建vcpu

 

vmx_init ---- kvm_init() ---- kvm_arch_init()

阅读(740) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~
评论热议
请登录后评论。

登录 注册