unikraft
wayfinder
unikraft | wayfinder | |
---|---|---|
2 | 2 | |
18 | 7 | |
- | - | |
2.4 | 3.6 | |
12 months ago | over 2 years ago | |
C | Go | |
GNU General Public License v3.0 or later | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
unikraft
-
Ask HN: Examples of Microkernels?
It seemed to be in a similar space to Genode when I had a brief look. Is it clear how it compares?
A system that claims to allow you to configure it in microkernel and other modes might be interesting for comparison of the approaches, but I've only noticed it via a local connexion: https://project-flexos.github.io/
-
Unikraft is a fast, secure and open-source Unikernel Development Kit
Thanks for the feedback, we're in the process of adding a security section[0] which will detail more on the on-goings, but we'll work on adding more highlights on the main page.
I need to highlight we have separate research[1][2] which will make its way upstream soon which aims to provide hardening between internal libraries (e.g. isolating the network stack or scheduler) using gates like Intel MPK or separate hardware-accelerated services.
[0]: https://github.com/unikraft/docs/pull/32
[1]: https://project-flexos.github.io/
[2]: https://github.com/project-flexos/unikraft
wayfinder
-
Unikraft is a fast, secure and open-source Unikernel Development Kit
1. We build unikernels using the 'kraft container' which is Docker/OCI image[0][1] which has the necessary build tools to build Unikraft unikernels. We plug this into Concourse which builds thousands of combinations of Unikernels[2] as part of our code review process[3]. In addition to this, we have on-going research and tooling to help automatically discover permutations of Unikernel builds[4].
2. Really great question, but mostly you can expect the same functionality of an application when it runs as a unikernel because the application "thinks" it's still running in a traditional OS environment -- as it should be. Check out this documentation[5] (after step 7) about porting, it has snippets about where the boundary sometimes breaks.
3. Well, general-purposes are not suited for deployment environments. Installing Gentoo (or Ubuntu, Debian, for that matter) is a waste of resources if you only SSH in once to install your desired application.
[0]: https://unikraft.org/docs/usage/install/#docker
[1]: https://github.com/unikraft/kraft/tree/staging/package/docke...
[2]: https://builds.unikraft.io
[3]: https://unikraft.org/docs/contributing/review-process/#stage...
[4]: https://github.com/lancs-net/wayfinder
[5]: https://unikraft.org/docs/develop/porting/#providing-build-f...
- Wayfinder: OS Configuration Micro-Benchmarking Framework
What are some alternatives?
FreeRTOS-Kernel - FreeRTOS kernel files only, submoduled into https://github.com/FreeRTOS/FreeRTOS and various other repos.
app-click - Click Modular Router on Unikraft
qubes-mirage-firewall - A Mirage firewall VM for QubesOS
unikraft - A next-generation cloud native kernel designed to unlock best-in-class performance, security primitives and efficiency savings.
nanos - A kernel designed to run one and only one application in a virtualized environment
click - The Click modular router: fast modular packet processing and analysis
docs - The front page and documentation for the Unikraft Open-Source Project.
pykraft - Python library for configuring and building unikernels