
vivo 自研蓝河操作系统内核正式开源:行业首款,Rust 语言打造

由Rust语言编写的蓝河操作系统内核(以下简称“蓝河内核”),号称具备安全、轻量、通用的三大特性:
- 在安全方面,蓝河内核全栈使用Rust语言开发,也是行业首款适用于嵌入式平台和移动设备的开源Rust内核,基于编译期所有权系统,通过所有权、借用、生命周期的静态规则,编译期确保内存安全,而在运行时通过智能指针,灵活管理内存,无额外内存回收性能损耗,让内存安全从被动防御到主动掌控。得益于对基础数据结构高性能低开销的设计,蓝河内核对硬件资源需求低,最小内核内存占用仅13KB,能够以更低的成本满足各类终端产品的需求。另外,蓝河内核兼容RISC-V、ARM等多芯片架构,可满足开发者在不同平台的业务需要,也支持兼容POSIX接口的标准库,拓展支持已有的生态。
蓝河内核具备完整的系统调度、内存管理、文件系统、网络、和设备驱动五大内核能力。
- 在系统调度上,蓝河内核支持主流的调度算法,包括基于时间片轮转调度和基于优先级队列的实时调度;在内存管理方面,蓝河内核将Rust语言内存安全核心特性和智能指针相结合保障内存安全,同时支持多种内存分配算法,可适用于不同场景,供开发者基于自己的业务场景灵活选择;蓝河内核的文件系统则采用了经典的层次化结构设计,实现了对文件和inode等数据结构的抽象操作,支持快速适配不同的文件系统;而对于网络,蓝河内核支持基础的TCP/IP协议栈,能够以阻塞模式和非阻塞模式调用,可支持接入多网卡设备,也基于RustZero-Copy零拷贝设计,消除数据传输过程的堆分配开销,支持了socketapi;设备管理上,蓝河内核通过硬件抽象等一系列方式,提升了对于CPU架构和驱动的兼容能力,支持Rust语言开发驱动,也支持兼容已有的C语言内核的外设驱动。
vivo还表示将继续与开放原子开源基金会携手合作,推进Rust语言在中国的推广和普及。第三届vivo蓝河操作系统创新赛也即将启动,本届大赛围绕C/C++与Rust的项目级转译以及Rust内核与C驱动桥接设置赛题。附蓝河内核的开源地址: