Update the intro section of README

This commit is contained in:
Tate, Hongliang Tian 2026-01-24 09:42:07 +08:00 committed by Tate, Hongliang Tian
parent b7ae738310
commit e44d7e2b12
1 changed files with 55 additions and 29 deletions

View File

@ -1,6 +1,6 @@
<p align="center"> <p align="center">
<img src="book/src/images/logo_en.svg" alt="asterinas-logo" width="620"><br> <img src="book/src/images/logo_en.svg" alt="asterinas-logo" width="620"><br>
A secure, fast, and general-purpose OS kernel written in Rust and compatible with Linux<br/> Toward a production-grade Linux alternative—memory safe, high-performance, and more<br/>
</p> </p>
<!-- Asterinas NixOS 0.17.0 demo. It is uploaded as a Github attachment <!-- Asterinas NixOS 0.17.0 demo. It is uploaded as a Github attachment
@ -34,37 +34,63 @@ Congratulations to the Asterinas community🎉🎉🎉
## Introducing Asterinas ## Introducing Asterinas
Asterinas is a _secure_, _fast_, and _general-purpose_ OS kernel The future of operating systems (OSes) belongs to Rust—a modern systems programming language (PL)
that provides _Linux-compatible_ ABI. that delivers safety, efficiency, and productivity at once.
It can serve as a seamless replacement for Linux The open question is not _whether_ OS kernels should transition from C to Rust,
while enhancing _memory safety_ and _developer friendliness_. but _how_ we get there.
* Asterinas prioritizes memory safety Linux follows an _incremental_ path.
by employing Rust as its sole programming language While the Rust for Linux project has successfully integrated Rust as an official second PL,
and limiting the use of _unsafe Rust_ this approach faces _inherent friction_.
to a clearly defined and minimal Trusted Computing Base (TCB). As a newcomer within a massive C codebase,
This innovative approach, Rust must often compromise on safety, efficiency, clarity, and ergonomics
known as [the framekernel architecture](https://asterinas.github.io/book/kernel/the-framekernel-architecture.html), to maintain compatibility with legacy structures.
establishes Asterinas as a more secure and dependable kernel option. And while new Rust code can improve what it touches,
it cannot retroactively eliminate _vulnerabilities_ in decades of existing C code.
* Asterinas surpasses Linux in terms of developer friendliness. Asterinas takes a _clean-slate_ approach.
It empowers kernel developers to By building a Linux-compatible, general-purpose OS kernel from the ground up in Rust,
(1) utilize the more productive Rust programming language, we are liberated from the constraints of a legacy C codebase—its interfaces, designs, and assumptions—and from the need to preserve historical compatibility for outdated platforms.
(2) leverage a purpose-built toolkit called [OSDK](https://asterinas.github.io/book/osdk/guide/index.html) to streamline their workflows, **Languages—including PLs—shape our way of thinking**.
and (3) choose between releasing their kernel modules as open source Through the lens of a modern PL, Asterinas rethinks and modernizes the construction of OS kernels:
or keeping them proprietary,
thanks to the flexibility offered by [MPL](#License).
While the journey towards a production-grade OS kernel is challenging, * **Modern architecture.**
we are steadfastly progressing towards this goal. Asterinas pioneers the [_framekernel_](https://asterinas.github.io/book/kernel/the-framekernel-architecture.html) architecture,
Over the course of 2024, combining monolithic-kernel performance with microkernel-inspired separation.
we significantly enhanced Asterinas's maturity, Unsafe Rust is confined to a small, auditable framework called [OSTD](https://asterinas.github.io/api-docs-nightly/ostd/),
as detailed in [our end-year report](https://asterinas.github.io/2025/01/20/asterinas-in-2024.html). while the rest of the kernel is written in safe Rust,
In December 2025, keeping the memory-safety TCB intentionally minimal.
we launched [Asterinas NixOS](https://asterinas.github.io/book/distro/index.html),
an Asterinas distribution based on [NixOS](https://nixos.org/). * **Modern design.**
This release marks Asterinas reaching the Minimum Viable Product (MVP) milestone. Asterinas learns from Linux's hard-won engineering lessons,
In 2026, we aim to make Asterinas production-ready on x86-64 virtual machines and attract real users. but it is not afraid to deviate when the design warrants it.
For example, Asterinas improves the CPU scalability of its memory management subsystem
with a novel scheme called [CortenMM](https://dl.acm.org/doi/10.1145/3731569.3764836).
* **Modern code.**
Asterinas's codebase prioritizes safety, clarity, and maintainability.
Performance is pursued aggressively, but never by compromising safety guarantees.
Readability is treated as a feature, not a luxury,
and the codebase is structured to avoid hidden, cross-module coupling.
* **Modern tooling.**
Asterinas ships a purpose-built toolkit, [OSDK](https://asterinas.github.io/book/osdk/guide/index.html),
to facilitate building, running, and testing Rust kernels or kernel components.
Powered by OSTD,
OSDK makes kernel development as easy and fluid as writing a standard Rust application, eliminating the traditional friction of OS engineering.
Asterinas aims to become **a production-grade, memory-safe Linux alternative**,
with performance that matches Linux—and in some scenarios, exceeds it.
The project has been under active development for four years,
supports 230+ Linux system calls,
and has launched an experimental distribution,
[Asterinas NixOS](https://asterinas.github.io/book/distro/index.html).
In 2026, our priority is to advance project maturity toward production readiness,
specifically targeting standard and confidential virtual machines on x86-64.
Looking ahead, we will continue to expand functionality and
harden the system for **mission-critical deployments**
in data centers, autonomous vehicles, and embodied AI.
## Getting Started ## Getting Started