目录
目录README.md

赛题题目:基于 Rust 语言的内核组件化设计与实现

赛题说明:

Rust 语言凭借内存安全、零成本抽象及高性能特性,已成为系统编程领域的重要革新力量。本赛题聚焦内核组件化设计,要求利用 Rust 的模块化能力、所有权机制和异步编程机制等,实现内核功能解耦、可扩展架构和支持高并发执行。通过实践 Rust 内核功能组件开发,参赛者需解决跨语言接口适配、调度性能优化和资源管理优化等核心问题,并形成不同形态操作系统内核架构,包括宏内核、微内核、虚拟化软件,探索 Rust 在内核场景下的工程化应用,验证新型编程范式对系统底层的改造潜力,进一步研究内核组件故障隔离、动态加载和热升级能力,为操作系统弹性部署与漏洞修复提供新路径。推动系统级代码的高性能、安全性与开发效率双重提升。

赛题要求:

任务目标:基于在唐图社区(包括位于github上的rcore-os,arceos, arceos-hypervisor,kern-crates等)的Rust内核组件和组件框架进行改进,或进一步设计实现新的内核组件和内核组件框架,形成可灵活组合的各种异构形态和功能的内核。具体要求如下所示(可在下面不同形态的内核中选择一个或多个):

  • 改进或创新并组合组件形成支持Linux应用的组件化宏内核,可运行Linux应用测试用例;
  • 改进或创新并组合组件形成支持Linux应用的组件化微内核,可运行Linux应用测试用例;
  • 改进或创新并组合组件形成支持运行多个内核的组件化虚拟化软件,可运行支持Linux应用的组件化宏内核,以及支持Linux应用的组件化微内核等;
  • 改进或创新并组合组件形成各种新颖功能或创新功能的组件化内核,如支持硬件新特性、故障隔离、动态加载和热升级能力等。

评分标准:

功能完整性(60%)

  • 改进或创新并组合组件形成的宏内核或微内核形态可运行Linux应用测试用例,以通过的测例数量为功能完整性评价指标;改进或创新并组合组件形成的虚拟化软件可运行Guest Mode的Linux内核和某个其他内核,以支持的虚拟化功能数量为功能完整性评价指标;改进或创新并组合组件形成新型组件化内核的新颖功能,有实际测例说明组件和内核的创新性,以创新性的可量化指标为功能完整性评价指标(100分)。

应用效果(20%)

  • 支持x86-64/aarch64/Risc-V64/LoongArch64 QEMU-9.2+模拟环境或物理环境中的一种处理器上运行(40分);
  • 有额外的测试用例能展示组件或组件化内核的功能、性能、安全等特征(40分);
  • 运行效果可重现(20分)。

代码规范(10%)

  • 基于Rust 2024版本进行开发(40分);
  • 代码结构清晰、符合开源社区规范、可维护性高(20分);
  • 能通过Rust的代码规范性检查(40分)。

文档质量(10%)

  • 文档包含设计文档、安装部署说明、测试分析报告(50分);
  • 文档条例清晰、撰写规范(50分)。

赛题联系人:

参考资料:

参赛资源支持:无

关于
27.0 KB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

©Copyright 2023 CCF 开源发展委员会
Powered by Trustie& IntelliDE 京ICP备13000930号