Unikernels: Library Operating Systems for the Cloud

被引:251
作者
Madhavapeddy, Anil [1 ]
Mortier, Richard [2 ]
Rotsos, Charalampos [1 ]
Scott, David
Singh, Balraj [1 ]
Gazagnaire, Thomas
Smith, Steven [1 ]
Hand, Steven [1 ]
Crowcroft, Jon [1 ]
机构
[1] Univ Cambridge, Cambridge CB2 1TN, England
[2] Univ Nottingham, Nottingham NG7 2RD, England
基金
英国工程与自然科学研究理事会;
关键词
microkernels; virtualization; type-safety;
D O I
10.1145/2499368.2451167
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We present unikernels, a new approach to deploying cloud services via applications written in high-level source code. Unikernels are single-purpose appliances that are compile-time specialised into standalone kernels, and sealed against modification when deployed to a cloud platform. In return they offer significant reduction in image sizes, improved efficiency and security, and should reduce operational costs. Our Mirage prototype compiles OCaml code into unikernels that run on commodity clouds and offer an order of magnitude reduction in code size without significant performance penalty. The architecture combines static type-safety with a single address-space layout that can be made immutable via a hypervisor extension. Mirage contributes a suite of type-safe protocol libraries, and our results demonstrate that the hypervisor is a platform that overcomes the hardware compatibility issues that have made past library operating systems impractical to deploy in the real-world.
引用
收藏
页码:461 / 472
页数:12
相关论文
共 50 条
[1]  
Affeldt Reynald, 2012, 6 WORKSH PROGR LANG, P27, DOI [10.1145/2103776.2103781, DOI 10.1145/2103776.2103781]
[2]  
Ammons G, 2007, VEE'07: PROCEEDINGS OF THE THIRD INTERNATIONAL CONFERENCE ON VIRTUAL EXECUTION ENVIRONMENTS, P44
[3]  
[Anonymous], 2012, P 2012 ACM C COMP CO
[4]  
[Anonymous], P 4 ACM SIGPLAN SIGO
[5]  
Barham P., 2003, ACM SIGOPS OPER SYST, V37, P164
[6]  
Baumann A, 2009, SOSP'09: PROCEEDINGS OF THE TWENTY-SECOND ACM SIGOPS SYMPOSIUM ON OPERATING SYSTEMS PRINCIPLES, P29
[7]  
Bershad B. N., 1995, Operating Systems Review, V29, P267, DOI 10.1145/224057.224077
[8]  
Biagioni E., 1994, Computer Communication Review, V24, P36, DOI 10.1145/190809.190318
[9]  
Cai Z, TR1011 RIC U
[10]  
Childers Bill, 2010, LINUX J, V2010