Xen Project Introduces the Unikraft Unikernel Project

  • Unikraft aims to simplify the process of building unikernels through a unified and customizable code base

    SAN FRANCISCO, December 5, 2017 – The Xen Project, hosted by The Linux Foundation, today announced the formation of Unikraft. Unikraft is an incubation project under the Xen Project focused on easing the creation of building unikernels, which compile source code into a lean operating system that only includes the functionality required by the application logic.

    The current generation of cloud computing requires workloads that are efficient, fast and secure. Containers are encouraging new ways of looking at the operating system. These trends are driving innovations with unikernels that allow developers to include only the bare minimum of traditional OS components to create lean, efficient, and fast-to-boot applications with an extra degree of isolation for environments like microservices, embedded devices, IoT, and automotive, among many others.

    A long-time advocate of unikernels, the Xen Project supports initiatives like MirageOS, a library operating system that constructs unikernels for secure, high-performance network applications. The Xen Project is compatible with HaLVM, a port of the Glasgow Haskell Compiler toolsuite that enables developers to write high-level, lightweight virtual machines that can run directly on the Xen Project hypervisor. Galois originally developed HaLVM to allow for quick and easy prototyping of operating system components; however, it can also operate as a network appliance.

    While many projects focus on building out unikernel components, a single unified code base with a modular architecture, like Unikraft’s, is needed to make the process of building unikernels quick, fast, and easily accessible to more developers.

    “Unikernels provide a tremendous opportunity for those who are looking to ship workloads quickly and efficiently with isolation to eliminate security risk, but the complexity of building unikernels have stymied this technology’s time-to-market,” said Dr. Felipe Huici, Chief Researcher, Systems and Machine Learning Group, NEC Laboratories Europe. “Unikraft is on a mission to bring unikernels to market faster through an unified code that is customizable to meet the needs of a wide range of applications, and even runtime-specific unikernels, like MirageOS.”

    “We are seeing a growing trend and interest around unikernels from inside and outside the Xen Project community with commits growing daily from a range of vendors in the embedded, automotive, enterprise application space, and more,” said Lars Kurth, Chairperson of the Xen Project. “We look forward to helping incubate this project and furthering collaboration within the unikernel community.”

    <u>Customizable Architecture Provides Flexibility</u>

    The Unikraft architecture consists of two basic components to make the process of building unikernels more fluidly: library pools and a build tool.

    Library pools act as building blocks in creating customizable unikernels on top of a consistent code base. The library pools include:

    • Architecture libraries: Containing libraries specific to a computer architecture (e.g., x86_64, ARM32, or MIPS).
    • Platform Libraries: Allowing users to select platforms like Xen, KVM, bare metal, and user-space Linux.
    • Core libraries: Consisting of a rich set of functionality, which includes components like drivers (both virtual such as netback/netfront and physical such as ixgbe), filesystems, memory allocators, schedulers, network stacks, runtimes (e.g. a Python interpreter), and debugging and profiling tools.
    • External libraries: Ports of standard libs (e.g., libc, openssl) to the Unikraft system.

    <u>Automating the Unikernel Build Process</u>

    The Unikraft build tool compiles the application and the selected libraries together to create a binary for a specific platform and architecture (e.g., Xen on x86_64). The tool is inspired by the popular Linux kconfig system and consists of a set of Makefiles allowing users to select libraries, to configure them, and to receive warnings when library dependencies are not met.

    To create a simple application, the user simply implements a main() function, fills out a simple Makefile and runs “make menuconfig”, where he or she selects from the libraries described above and configures the image, choosing, in the process, the target platform(s). The user then saves the configuration, types “make”, an Unikraft automatically generates the images, one per selected platform. This means that application developers no longer have to target a particular platform; in essence, with Unikraft, they get multiple platform support for free.

    NEC Laboratories Europe, the European labs of NEC’s research branch focused on software research in the areas of IoT, data science and security and networking, is the main driving force behind Unikraft and is providing the initial implementation for this project.

    The Xen Project will provide Unikraft with basic infrastructure and marketing support. Unikraft uses the 3-Clause BSD license and is available for download here. For more information on how to get involved in the project, the website is here.

    About Unikraft

    Unikraft is a project that aims to simplify the process of building unikernels. The architecture consists of customizable libraries and a build tool to create quick, fast and lean applications for embedded, IoT and automotive use cases, and more. Unikraft is an incubation project of the Xen Project, which provides basic infrastructure and marketing support to help a project to progress. For more information about Unikraft and to participate, please visit https://xenproject.org/developers/teams/unikraft.html.

    Additional Resources

    The post Xen Project Introduces the Unikraft Unikernel Project appeared first on The Linux Foundation.


Log in to reply

Tmux Commands

screen and tmux

A comparison of the features (or more-so just a table of notes for accessing some of those features) for GNU screen and BSD-licensed tmux.

The formatting here is simple enough to understand (I would hope). ^ means ctrl+, so ^x is ctrl+x. M- means meta (generally left-alt or escape)+, so M-x is left-alt+x

It should be noted that this is no where near a full feature-set of either group. This - being a cheat-sheet - is just to point out the most very basic features to get you on the road.

Trust the developers and manpage writers more than me. This document is originally from 2009 when tmux was still new - since then both of these programs have had many updates and features added (not all of which have been dutifully noted here).

Action tmux screen
start a new session tmux OR
tmux new OR
tmux new-session
re-attach a detached session tmux attach OR
tmux attach-session
re-attach an attached session (detaching it from elsewhere) tmux attach -d OR
tmux attach-session -d
screen -dr
re-attach an attached session (keeping it attached elsewhere) tmux attach OR
tmux attach-session
screen -x
detach from currently attached session ^b d OR
^b :detach
^a ^d OR
^a :detach
rename-window to newname ^b , <newname> OR
^b :rename-window <newn>
^a A <newname>
list windows ^b w ^a w
list windows in chooseable menu ^a "
go to window # ^b # ^a #
go to last-active window ^b l ^a ^a
go to next window ^b n ^a n
go to previous window ^b p ^a p
see keybindings ^b ? ^a ?
list sessions ^b s OR
tmux ls OR
tmux list-sessions
screen -ls
toggle visual bell ^a ^g
create another window ^b c ^a c
exit current shell/window ^d ^d
split window/pane horizontally ^b " ^a S
split window/pane vertically ^b % ^a |
switch to other pane ^b o ^a <tab>
kill the current pane ^b x OR (logout/^D)
collapse the current pane/split (but leave processes running) ^a X
cycle location of panes ^b ^o
swap current pane with previous ^b {
swap current pane with next ^b }
show time ^b t
show numeric values of panes ^b q
toggle zoom-state of current pane (maximize/return current pane) ^b z
break the current pane out of its window (to form new window) ^b !
re-arrange current panels within same window (different layouts) ^b [space]
Kill the current window (and all panes within) ^b killw [target-window]
  • Open Source Summit

    Join us in Edinburgh! Submit a proposal to speak by July 1 for Open Source Summit & ELC + OpenIoT Summit Europe.

    Submit a proposal to speak at Open Source Summit Europe & ELC + OpenIoT Summit Europe, taking place October 22-24, 2018, in Edinburgh, UK, and share your knowledge and expertise with 2,000+ open source technologists and community leaders. Proposals are being accepted through 11:59pm PDT, Sunday, July 1.

    This year’s tracks and content will cover the following areas at Open Source Summit Europe:

    Cloud Native Apps/Serverless/Microservices Infrastructure & Automation (Cloud/Cloud Native/DevOps) Linux Systems Artificial Intelligence & Data Analytics Emerging Technologies & Wildcard (Networking, Edge, IoT, Hardware, Blockchain) Community, Compliance, Governance, Culture, Open Source Program Management (Open Collaboration Conference track) Diversity & Inclusion (Diversity Empowerment Summit) Innovation at Apache/Apache Projects TODO / Open Source Program Management

    View the full list of suggested topics for Open Source Summit Europe.

    Suggested Embedded Linux Conference (ELC) Topics:

    Audio, Video, Streaming Media and Graphics Security System Size, Boot Speed Real-Time Linux – Performance, Tuning and Mainlining SDKs for Embedded Products Flash Memory Devices and Filesystems Build Systems, Embedded Distributions and Development Tools Linux in Devices such as Mobile Phones, DVRs, TVs, Cameras, etc Use of Linux in Automotive Drones and Robots Linux in the Internet of Things Practical Experiences and War Stories Standards Public Infrastructure Industrial Automation

    This year’s tracks and content will cover the following areas at ELC:

    Suggested OpenIoT Summit Topics:

    Real-Time OS (Zephyr, RIOT, MyNewt, FreeRTOS, NuttX, mbed and Others) Outside World Meets IoT (Sensor Interaction, Low Footprint, Connected Sensors, EMF/RFI Impact) Bootloaders, Firmware & Updates Containers Distributed Edge Application Technologies On-device Analytics Blockchain for Constrained Devices Device Management Power Management Configuration Management Developing for Security Safety Considerations Certifications – Lessons Learned Taking Devices to Product

    View the full list of suggested topics for ELC + OpenIoT Summit Europe.


    Sign up to receive updates on Open Source Summit Europe and ELC + OpenIoT Summit Europe:

    Register & Save

    Not submitting, but plan to attend? Register before August 18 and save $300 with early bird pricing. One registration gets you access to both Open Source Summit Europe & ELC + OpenIoT Summit Europe.

    Interested in Sponsoring?

    Showcase your thought leadership among a vibrant open source community and connect with top influencers driving today’s technology purchasing decisions. Learn how to become a sponsor of Open Source Summit Europe or ELC + OpenIoT Summit Europe.

    The post Last Chance to Speak at Open Source Summit and ELC + OpenIoT Summit Europe – Submit by July 1 appeared first on The Linux Foundation.


    read more
  • Open Source Guides

    The Open Source Guides for the Enterprise are now available in Chinese.

    The popular Open Source Guides for the Enterprise, developed by The Linux Foundation in collaboration with the TODO Group, are now available in Chinese. This set of guides provides industry-proven best practices to help organizations successfully leverage open source.

    “Making these resources available to Chinese audiences in their native language will encourage even greater adoption of and participation with open source projects,” said Chris Aniszczyk, CTO of Cloud Native Computing Foundation and co-founder of the TODO Group. The guides span various stages of the open source project lifecycle, from initial planning and formation to winding down a project.

    The 10 guides now available in Mandarin include topics such as:

    Creating an Open Source Program by Chris Aniszczyk, Cloud Native Computing Foundation; Jeff McAffer, Microsoft; Will Norris, Google; and Andrew Spyker, Netflix Using Open Source Code by Ibrahim Haddad, Samsung Research America Participating in Open Source Communities by Stormy Peters, Red Hat; and Nithya Ruff, Comcast Recruiting Open Source Developers by Guy Martin, Autodesk; Jeff Osier-Mixon, Intel Corporation; Nithya Ruff; and Gil Yehuda, Oath Measuring Your Open Source Program’s Success by Christine Abernathy, Facebook; Chris Aniszczyk; Joe Beda, Heptio; Sarah Novotny, Google; and Gil Yehuda

    The translated guides were launched at the LinuxCon + ContainerCon + CloudOpen China conference in Beijing, where The Linux Foundation also welcomed Chinese Internet giant Tencent as a Platinum Member.

    The post Open Source Guides for the Enterprise Now Available in Chinese appeared first on The Linux Foundation.


    read more