The Popcorn Linux project is exploring how to improve the scalability of operating systems, Linux in particular, on future multi- and many-core hardware platforms, and how to design operating systems for Instruction Set Architecture (ISA)-diverse multi/many-core architectures. Additionally, the project is exploring how to automatically compile/synthesize/execute code on ISA-heterogeneous hardware.
The project is exploring a replicated-kernel OS model for the Linux operating system. In this model, multiple Linux kernel instances are run on the same hardware, one kernel per ISA (or core), one kernel per NUMA node, or a combination of the two mappings, with core-private memory. The kernel instances directly communicate, kernel-to-kernel, in order to maintain a common operating system state that is (partially) replicated over heterogeneous kernel instances. Communication is implemented over shared memory or by exploiting message passing hardware, if available. Hardware resources (i.e., disks, network interface cards) are partitioned per kernel instance, and runtime repartitioning allows any kernel to have exclusive access to any device. The kernel instances coordinate to maintain the abstraction of a single-image operating system (e.g., filesystem namespace), enabling legacy Linux applications to run transparently.
- November 11, 2016: The sources for the ARM/x86 version of Popcorn Linux and the Popcorn compiler toolchain are available here!
- November 10, 2016: We will be at ASPLOS XXII in Xi'an China! Read the paper we'll present here!
- March 15, 2016: We will be at EuroSys/MaRS 2016 and Eurosys/CloudDP 2016 in London! Read the papers we will present here and here.
- November 19, 2015: Our SOSP/HotPower 2015 paper has been selected as one of the Best Papers for publication in ACM Operating Systems Review (OSR), December 2015 issue.
- September 24, 2015: We will be at SOSP/HotPower 2015 in Monterey! Read the paper we will present here. Come to see our ARM+x86 demo! Photo.
- April 16, 2015: We released Popcorn Linux and Compiler Framework for Xeon+Xeon Phi! Download it here.
- April 10, 2015: We will be at Eurosys 2015 in France! Read the paper we will present here.
- January 19, 2015: Saif Ansary's paper accepted at 2015 ASPLOS SRC ACM Competition here.
- October 1, 2014: We released Popcorn Linux YOCTO! Download it here.
- July 1, 2014: We will be at OLS 2014 in Ottawa! Read the paper we will present here.
- March 28, 2014: We will be at EuroSys/SFMA 2014 in Amsterdam! Read the paper we will present here.
- March 15, 2014: Popcorn code is open-source and now hosted on Sourceforge! popcornlinux.sourceforge.net
This work is supported in part by ONR under grants N00014-13-1-0317, N00014-16-1-2104, and N00014-16-1-2711, AFOSR under grants FA9550-14-1-0163 and FA9550-16-1-0371, and NAVSEA/NEEC under grants 3003279297 and N00174-16-C-0018. Any opinions, findings, and conclusions or recommendations expressed in this site are those of the author(s) and do not necessarily reflect the views of ONR, AFOSR, and NAVSEA.