11
Разработка высокопроизводительной IO подсистемы для QEMU/KVM
Денис Лунёв

QEMU — это opensource реализация виртуальных машин, которая при работе с KVM (kernel virtual machine — монитор виртуальных машин, реализованный в ядре Linux с использованием аппаратных возможностей виртуализации, присутствующих в современных процессорах) позволяет достигать высокой производительности и низких накладных расходов. Работа любой операционной системы связана с выполнением дисковых операций. При этом для серверных систем IO подсистема наряду с сетевой подсистемой практически полностью определяют накладные расходы на эмуляцию на современных процессорах.

В qemu реализована общая IO подсистема и некоторое количество форматных драйверов для поддержки различных образов.

Постановка задачи

Требуется улучшать поддержку форматного драйвера Parallels (то, что было реализовано в предыдущей версии программного продукта и не было реализовано в QEMU по имеющейся спецификации) и работать над его производительностью и производительностью самой IO подсистемы QEMU.

Работа включает в себя изучение работы форматного драйвера и работы IO подсистемы ядра Linux, написание оптимизированного кода с учетом современного файлового API ядра.