QEMU FVD

See the technical details in my USENIX ATC'11 paper on FVD.

See the project homepage at qemu.org: http://wiki.qemu.org/Features/FVD

See my related discussions on the QEMU mailing list.

Below are the steps to download and compile QEMU with FVD.

1. Down the three files below, which include the complete Git tree of QEMU with FVD.

qemu-fvd-June-9-2011.tar.gz-00

qemu-fvd-June-9-2011.tar.gz-01

qemu-fvd-June-9-2011.tar.gz-02

2. Merge them into one file using the command below.

$ cat qemu-fvd-June-9-2011.tar.gz-00 qemu-fvd-June-9-2011.tar.gz-01 qemu-fvd-June-9-2011.tar.gz-02 > qemu-fvd-June-9-2011.tar.gz

3. tar zxf qemu-fvd-June-9-2011.tar.gz

4. Change to directory qemu-fvd-June-9-2011

5. Follow the normal process to compile and install QEMU. You may need to install some missing packages in order to make 'configure' pass. Try 'configure --help' for more options. The example below assumes that only the x86_64-softmmu target is needed.

$ ./configure --prefix=/your/install/dir --target-list=x86_64-softmmu

$ make

$ make install

6. FVD supports a diverse set of use cases. Below is a simple example of using FVD with a backing file.

$ /your/install/dir/qemu-img create -f fvd -b /dir/your/backing/img.raw img.fvd

To create an FVD image with copy-on-read enabled:

$ /your/install/dir/qemu-img create -f fvd -ocopy_on_read=on -b /dir/your/backing/img.raw img.fvd

7. If libvirt is used, the XML configuration file needs to use the FVD-enabled version of QEMU /your/install/dir/bin/qemu-system-x86_64