本文主要是介绍qcow2 和 rbd qemu侧流程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
qcow2的读写更多的是借助qemu本身的协程机制实现并发,在读写文件的时候,会启动一个worker线程去执行读写,如果使用io thread 会在io thread里aio_poll,如果没有使用iothread,也在主线程里poll。worker进程使用的是pwrite/pread读写文件,qemu-img的同步io的worker进程使用的是pwritev/preadv,读写完成后,worker进程会退出,poll会执行后面的底半部和aio_handler,读写并不会阻塞主线程或者iothread线程
rbd的读写借助于librbd的异步回调来实现,同样写不会因为write read阻塞当前线程。当读写io完成后,回调函数根据参数往下面来执行相应的操作。
qcow2类型磁盘 qemu侧程序流程:
rbd qemu侧流程:
这篇关于qcow2 和 rbd qemu侧流程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!