Selected Publications

All Publications

More Publications

Recent Posts

More Posts

Since last month (Feb. 2012), I’ve started working for OnApp, a UK-based company developing cloud software for hosts.

My role as a Core Engineer in the Storage Platform Group involves architecting and engineering storage software components in the Linux kernel. Hopefully some of these components will be released soon, along with our product releases. For the moment stay tuned for more news & releases soon…


A VM disk image in Virtual Box (version 4.0.6) can be cloned using the command line “VBoxManage” tool with the “clonehd” command. Unfortunately, cloning a VM that already has a registered UUID in Virtual Box fails like that: ` #> ‘C:\Program Files\Oracle\VirtualBox\VBoxManage.exe’ clonehd .\MyVM.vdi .\NewVM.vdi VBoxManage.exe: error: Cannot register the hard disk ‘C:\VMs\MyVM.vdi’ {601b44ed-a301-45a7-8b17-9b2185040a1e} because a hard disk ‘C:\VMs\MyVM1.vdi’ with UUID {601b44ed-a301-45a7-8b17-9b2185040a1e} already exists VBoxManage.exe: error: Details: code E_INVALIDARG (0x80070057), component VirtualBox, interface IVirtualBox, callee IUnknown Context: “OpenMedium(Bstr(pszFilenameOrUuid).


Configuring recent versions of toirtoise SVN to work with non-standard ports is a bit tricky. I tried editing the “subversion config file” through Settings->General->Edit, to using an ssh command line, like the one I’m using on Linux for the same repository, but that didn’t work. A quick hack-style solution is to go to TortoiseSVN->Settings->Network and set the SSH client to (assuming port number XX): “C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe -P XX” (The hack is also described here: http://www.


For the last few weeks I’ve been working on a new project, building an electronic store that will hopefully grow into a successful business. Unfortunately I’ve had to put all my other projects on hold for this, but hopefully this won’t take more than a couple of months :) …I know, famous last words. So, lots of new things for me to learn… I’ve been exploring the area of e-commerce platforms and played with a few that seemed promising.


On July 1st, 2011 I left my position as Collaborating Researcher at FORTH-ICS to start working independently on new projects, solving new problems and learning new things. I’ll be posting updates about my work, projects and ideas in the next few months. Expecting exciting times ahead…



NGPaaS (EU Research Project)

The NGPaaS project aims to implement the next-generation Platform-as-a-Service.

ACTiCLOUD (EU Research Project)

The ACTiCLOUD project aims to implement an efficient and active rack-scale Cloud platform.

Modified Xen Blkbak layer with multiqueue support

Modified Xen Blkback driver providing Multiple private queues for Xen v3 and v4 for the OnApp Integrated Storage platform.

Mirror Sync module for Linux Device Mapper

Design and implementation of a fault-tolerant syncronous mirroring layer (kernel module) for the Linux device mapper.

NBD - Network Block Device - Linux Kernel module

Modified & extended kernel driver for Network Block Devices (nbd) for the OnApp Integrated Storage platform.

Reverse Striping module (destripe) for Linux Device Mapper

Implementation of a reverse striping module for the OnApp Integrated Storage platform.

Superfluidity (EU Research Project)

The Superfludity project aims to implement a highly-fluid universal cloud services platform.

SHARCS (EU Research Project)

The SHARCS project aims to design and implement a highly-secure platform.

Euroserver (EU Research Project)

The Euroserver project aims to implement a highly-efficient low-power microserver using ARM SoCs.

Trilogy 2 (EU Research Project)

The Trilogy 2 project aims to design and implement an efficient cloud architecture that scales across cloud service providers.