Making quick application development even faster
To lead the next generation of cloud computing, software developers must build, upload and quickly deploy applications. Currently, the software and IT industry run software on shared hardware like data centres to keep costs down. The EU-funded UNICORE project will enable software developers to easily build and quickly deploy the smallest lightweight virtual machines (unikernels). It will create a common code base from which to build unikernels and develop tools that will make the creation of these unikernels easy. The creation of an open-source toolchain will enable secure and portable unikernel development, with promising commercial opportunities that will be prototyped and demonstrated in four relevant industrial innovation directions: serverless computing, network function virtualisation, Internet of Things and smart contracts.
Quickly developing, upgrading and deploying applications is the core function of the software and IT industry, often achieved through running software on shared hardware (e.g. on data centers) in order to reduce costs and improve profitability. At this point however, the software world appears stuck with inherently insecure and not-so-efficient lightweight virtualization (e.g. containers), because virtual machines are deemed too expensive to use in many scenarios. Unikernels, extremely lightweight VMs, seem like a step towards a solution, but their overwhelming development time and costs hinder their use in real-world settings. Unicore will challenge this status quo by enabling software developers to easily build and quickly deploy lightweight, secure and verifiable images (which we call unikernels) starting from existing applications. Unicore will create a common code base from which to build unikernels, and develop tools that will make the creation of such unikernels as easy as compiling an app for an existing OS, which will enable EU players to lead the next generation of cloud computing services and technology. Such tools will also allow for the creation of lean, efficient operating systems that would be perfectly suitable for resource-constrained devices settings such as IoT. Through its industry-led consortium and its top-notch academic partners, Unicore will ensure exploitation of its technical results through the implementation and operational deployment of multiple use cases. Unicore addresses the work programme’s goals by (1) providing a common code base and tools for code reusability, (2) by developing tools for verification and validation of the generated software, (3) through transparently handling of cross-platform dependencies and by (4) accelerating the full software lifecycle by fully automating several of its stages.