Am Dienstag, den 05.10.2010, 17:11 +0000 schrieb Pratyush: > Pratyush <pratyush.kshirsagar <at> gmail.com> writes: > > > > > Hello Everyone, > > > > As the Proportional RSS project is on its verge of completion and added to > > dragonfly. I request you guys to grant me permission to move forward with > > implementation of virtio drivers on dragonfly. If a member among us is doing > > this project, I will go for another. > > > > I would like to do the virtio project with one of my friend (Sandip Jadhav > > - CS > > Grad Student Binghamton University ), he too is in dragonfly kernel mailing > > list. This project can give us exposure to device drivers in dragonfly and > > also > > can convert our conceptual knowledge of virtio to some practical length. I > > thought of doing in a group, so that we can move with a pace suitable for > > further contributions to dragonfly. > > > > Thank You, > > Pratyush > > <pratyush.kshirsagar [at] gmail.com> > > Feeling Lucky to be a member of DragonFly Family :) > > > > > > > I thought that after being on a track with virtio drivers, I will go with > doing > some work on check pointing vkernel. After that we can move forward with > vkernel > migration using opportunistic replay approach as we have the checkpoints > generated. But all this depends on your guidance, I can go the way you guys > suggest.
Actually, I have asked Matt about vkernel checkpointing recently as I have huge interest in being able to suspend to disk or migrate vkernels to other machines. I thought that one had to modify the kernel to support checkpointing of multiple vmspaces (which the vkernel makes use of), and which is currently not supported (actually doesn't sound too complicated), but Matt said that it should be possible to do without any modification of the real kernel. One would have to teach the vkernel to catch the SIGCKPT and to collect and save the vpagetable information for the vkernel-processes together with configuration information like network device and console, and to restore it upon SIGTHAW. I might take a stab at it after my exam on Monday. Being able to checkpoint vkernels would enable us to migrate a running vkernel within a few seconds to another box, e.g. for the purpose of CPU/network load-balancing, or to save energy by employing VaryOn/Off strategies, i.e. shutting down servers with too little load. The whole consolidation/virtualization buzz would find it's way into DragonFly :). Another great application of vkernels could be for laptops. Imagine your laptop runs on DragonFly, and your host kernel is running a X11 display server, while all your X11 clients run inside the vkernel. This enables you to checkpoint the vkernel, shut down the laptop, and to later restore where you left off (assuming X11 doesn't keep state on the X11-server). I also think that vkernel checkpointing is a great feature for virtual hosting. Especially combined with swapcache, one could run a huge number of vkernels on a single machine, giving each enough main memory, backed by a SSD. Whether it performs well is another question :) Regards, Michael
