<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Hi Gaurab,<div><br></div><div>Openstack is not a hypervisor, it is a management layer that sits on top of a hypervisor. Management of the guest filesystem and memory is all done by an underlying hypervisor, Generally KVM or Xen. KVM is essentially kernel module extensions for QEMU (which is a software emulator). I hope this is helpful.</div><div><br></div><div>Vish</div><div><br><div><div>On Aug 3, 2012, at 3:05 AM, Gaurab Basu <<a href="mailto:basugaurab88@gmail.com">basugaurab88@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">Hi Jay,<br><br>Thanks a lot again, trying to get an understanding of the overall process.<br><br>So the file system for qcow2 is sort of managed by qemu(not by openstack itself) ... create etc is done by qemu but read/write from filesystem is also manged by qemu?<br>
Is the filesystem supported by qemu for all cases(hypervisors other than kvm, or different image formats or when COW layer is not implemented)<br>or does openstack have it's own filesystem management as well. <br><br>
And my next question is regarding memory management. In memory blocks are read/write to and from filesystem.<br>So this process is supported by openstack ( if so,where should i look in the code for memory management ) or qemu?<br>
<br>Thanks and Regards,<br>Gaurab<br><br><div class="gmail_quote">On Thu, Aug 2, 2012 at 10:53 PM, Jay Pipes <span dir="ltr"><<a href="mailto:jaypipes@gmail.com" target="_blank">jaypipes@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On 08/02/2012 07:47 AM, Gaurab Basu wrote:<br>
> Hi Jay,<br>
><br>
> Thanks for your reply, it helped me get started.<br>
><br>
> I have been going through the code and some of the sparse docs that are<br>
> available.<br>
><br>
> This is the code file<br>
> <a href="https://github.com/openstack/nova/blob/master/nova/virt/libvirt/utils.py" target="_blank">https://github.com/openstack/nova/blob/master/nova/virt/libvirt/utils.py</a><br>
><br>
> However I am facing a new issue and require some help. I wanted to<br>
> modify how openstack handles the cow layer as such and also the qcow2<br>
> format.<br>
> It turns out that openstack issues the external command "qemu-img".<br>
><br>
> First of all, is qemu-img internal to openstack ( I mean code for how<br>
> qemu-img is implemented is in openstack or in qemu )<br>
> It is in openstack, where is the code located.<br>
><br>
> If it is outside openstack, does that mean i have to change the code in<br>
> qemu and then link those binaries with openstack.<br>
<br>
</div>QEMU is a totally separate project from Nova, yes. QEMU is written in C<br>
and has a number of executables such as qemu-img and qemu-nbd, etc. Nova<br>
calls out to these executables in subprocesses.<br>
<br>
If you want to make changes to QEMU, yes, you would want to look into<br>
the QEMU contribution process and community.<br>
<br>
Here's where to start:<br>
<br>
<a href="http://wiki.qemu.org/Documentation/GettingStartedDevelopers" target="_blank">http://wiki.qemu.org/Documentation/GettingStartedDevelopers</a><br>
<br>
Best,<br>
-jay<br>
</blockquote></div><br><br clear="all"><br>
_______________________________________________<br>Mailing list: <a href="https://launchpad.net/~openstack">https://launchpad.net/~openstack</a><br>Post to     : <a href="mailto:openstack@lists.launchpad.net">openstack@lists.launchpad.net</a><br>Unsubscribe : <a href="https://launchpad.net/~openstack">https://launchpad.net/~openstack</a><br>More help   : <a href="https://help.launchpad.net/ListHelp">https://help.launchpad.net/ListHelp</a><br></blockquote></div><br></div></body></html>