k23 - Experimental WASM Operating System

Published on Jul 4, 2024

WebAssembly

k23是一个实验性的基于WebAssembly的WASM微内核操作系统,旨在通过使用WebAssembly作为主要的执行环境来提高安全性、模块化和开发便利性。

摘要

k23是一个活跃的研究项目,目前仍处于早期阶段,不适合生产环境。k23的核心理念是使用WebAssembly作为执行环境,以提供更高的安全性、模块化和可移植性,同时WebAssembly的易于静态分析性允许在不执行程序的情况下检测恶意软件。k23采用微内核架构,只有内核的核心功能和WebAssembly运行时在特权模式下运行,其他功能作为WebAssembly模块在强沙盒环境中实现。k23的核心理论是将编译器直接集成到内核中,以便内核和编译器之间可以相互提供信息,优化系统性能。例如,实现了接近与普通函数调用成本的零成本IPC调用、基于机器具体信息的优化以及基于程序信息的调度。目前,k23没有预编译的二进制文件,但可以从源代码运行,需要Rust、just和QEMU作为先决条件。提供了一系列的just命令来运行和测试k23。

观点

  • k23的目的:为了适应现代世界的安全需求,k23研究项目探索了一种新的操作系统构建方法,通过使用WebAssembly作为执行环境来提高安全性、模块化和开发便利性。
  • 为何选择WebAssembly:WebAssembly具有内在的安全性、模块化、可移植性和易于静态分析的特点,使其成为构建下一代操作系统的理想选择。
  • k23的设计:采用微内核架构,通过WebAssembly模块实现系统功能,确保了系统的安全性和模块化。
  • 编译器的集成:k23将编译器作为内核的一部分,以便实现系统级优化和提高性能,如零成本的IPC调用、机器特定的优化和基于程序信息的调度。
  • 安装和运行:用户需要自行编译k23以运行和测试,可以通过just命令行工具来执行相关操作,如运行测试或构建系统。
Read Original Article

《Maeiee成长感悟》- 从北漂到准父亲的生活洞察

生活在快速节奏的都市,作为程序员和即将迎来人生新角色的我,经历了无数难忘的瞬间和深刻的思考。这些体验和感悟,我渴望与你分享。

《Maeiee成长感悟》是一个收集我所有重要生活事件和心得的地方。每一篇文章都是对过去经历的反思和对未来生活的展望,真实记录作为一个程序员、副业探索者、终身学习者、一个准爸爸和一个北漂的多重身份之间的平衡与挑战。

这里没有华丽的辞藻,只有最真实的思考和感受,希望它们能触动你的心弦,也许能在你的生活旅程中提供一些启示和慰藉。