Going through source code of libvirt

Clone the source code:

git clone https://libvirt.org/git/libvirt.git

The directory listing inside the repository is something like this.

libvirtd is based on C programming language. It has bindings in different languages – C,C++,C#,Java,PHP, Ruby, and so on.

docs, daemon, and src are the few important directories. It is an well documented project, which is found in http://libvirt.org.

libvirtd starts connection or operates based on driver modes. On initialization, the drivers are registered with libvirtd.
Different types of drivers are a part of libvirtd. Each driver has a registration API, which loads up the driver specific function references for the libvirt APIs to call.

As we see in the above figure there is a Public API exposed to the client. When the client calls the Public API, depending on the connection uri, delegation is done to the specific driver implementation.

Leave a Reply

Your email address will not be published.

Recent Posts


GiottoPress by Enrique Chavez