55、存储虚拟化(下):如何建立自己保管的单独档案库?上一节,我们讲了qemu启动过程中的存储虚拟化。好了,现在qemu启动了,硬盘设备文件已经打开了。那如果我们要往虚拟机的一个进程写入一个文件,该怎么做呢?最终这个文件又是如何落到宿主机上的硬盘文件的呢?这一节,我们一起来看一看。 前端设备驱动virt...2025-10-31
54、存储虚拟化(上):如何建立自己保管的单独档案库?前面几节,我们讲了CPU和内存的虚拟化。我们知道,完全虚拟化是很慢的,而通过内核的KVM技术和EPT技术,加速虚拟机对于物理CPU和内存的使用,我们称为硬件辅助虚拟化。 对于一台虚拟机而言,除了要虚拟化CPU和内存,存储和网络也需要虚拟化,存储和网络...2025-10-31
53、计算虚拟化之内存:如何建立独立的办公室?上一节,我们解析了计算虚拟化之CPU。可以看到,CPU的虚拟化是用户态的qemu和内核态的KVM共同配合完成的。它们二者通过ioctl进行通信。对于内存管理来讲,也是需要这两者配合完成的。 咱们在内存管理的时候讲过,操作系统给每个进程分配的内存都是虚...2025-10-31
52、计算虚拟化之CPU(下):如何复用集团的人力资源?上一节qemu初始化的main函数,我们解析了一个开头,得到了表示体系结构的MachineClass以及MachineState。 4.初始化块设备我们接着回到main函数,接下来初始化的是块设备,调用的是configure_blockdev。这里我...2025-10-31
51、计算虚拟化之CPU(上):如何复用集团的人力资源?上一节,我们讲了一下虚拟化的基本原理,以及qemu、kvm之间的关系。这一节,我们就来看一下,用户态的qemu和内核态的kvm如何一起协作,来创建虚拟机,实现CPU和内存虚拟化。 这里是上一节我们讲的qemu启动时候的命令。 12qemu-syste...2025-10-31