Unikernels in OCaml
Unikernels in OCaml
Unikernels in OCaml Building operating systems that do one thing with OCaml and Solo5.
使用 OCaml 和 Solo5 构建只做一件事的操作系统。
A unikernel is a lightweight, specialized virtual machine where a single application is compiled directly with only the minimal operating system components it needs to run. It operates in a isolated environment with an attack surface significantly smaller and more restricted than traditional containers.
Unikernel 是一种轻量级的专用虚拟机,它将单个应用程序与运行所需的最小操作系统组件直接编译在一起。它运行在一个隔离的环境中,其攻击面比传统容器要小得多,也更受限。
Unlike traditional OSs that separate user applications from the kernel, a unikernel bundles everything into a single, isolated image that runs directly on a hypervisor (like KVM, BHyve, or OpenVMM). Because it removes unnecessary drivers and background services, a unikernel is extremely small, fast to boot, and efficient with resources.
与将用户应用程序与内核分离的传统操作系统不同,Unikernel 将所有内容捆绑到一个单一的隔离镜像中,并直接在虚拟机管理程序(如 KVM、BHyve 或 OpenVMM)上运行。由于它移除了不必要的驱动程序和后台服务,Unikernel 体积极小、启动速度快且资源利用率高。
Here, we will learn how to develop and deploy unikernels built using the OCaml language and the Solo5 unikernel. These are the two fundamental components that will then enable us to develop our own applications in the form of unikernels, which we can subsequently deploy using Albatross.
在这里,我们将学习如何开发和部署使用 OCaml 语言和 Solo5 unikernel 构建的 Unikernel。这两个基本组件将使我们能够以 Unikernel 的形式开发自己的应用程序,随后我们可以使用 Albatross 进行部署。
Tutorial A hands-on book: build a unikernel in OCaml from the first line to a running network service. Start reading →
教程:一本实践手册,教你从第一行代码开始,用 OCaml 构建一个可运行的网络服务 Unikernel。开始阅读 →
Packages The libraries and tools the ecosystem is made of - Solo5, the TLS stack, the build and deployment utilities. Browse packages →
软件包:构成该生态系统的库和工具——Solo5、TLS 协议栈、构建和部署实用程序。浏览软件包 →
Unikernels Ready-made unikernels: what each one does, how to configure it and how to deploy it. Browse unikernels →
Unikernel:现成的 Unikernel,介绍每个组件的功能、配置方法以及部署方式。浏览 Unikernel →