First Commit

This commit is contained in:
Tateisi 2025-08-12 13:48:46 +08:00 committed by Tateisi
parent 12b13e81d3
commit d253fa01dc
3 changed files with 168 additions and 1 deletions

View file

@ -1,3 +1,13 @@
# SJTU-report
Report of SJTU 2025 OS Summer Camp
## Report
- [中期报告](./Report-mid.md)
- [结题报告](./Report-fin.md)
## Repo
- <https://git.nailoong.me/Tateisi/rcore-learn>
- <https://git.nailoong.me/Tateisi/rcore-tutorial>

48
Report-fin.md Normal file
View file

@ -0,0 +1,48 @@
# 结题
## 课题研究的成果与结论
### 1. 课题研究结果100字以上
本课题成功复现了基于 Rust 的内存安全操作系统,实现了从源码构建到运行的全流程验证。在复现 zCore 的过程中,深入理解了自研操作系统与 Linux 生态兼容的技术路径与关键机制。同时,在 rCore 的 easy-fs 文件系统模块中引入了 MACMandatory Access Control强制访问控制机制完成了从设计到实现的实验验证证明了 Rust 基系统在安全策略扩展方面的可行性与灵活性。
### 2. 课题研究结论100字以上
研究表明Rust 语言在操作系统内核领域不仅能够显著降低内存安全漏洞的风险,还具备较高的可扩展性与生态兼容性。通过在现有内核框架中引入 MAC 机制,可以在不显著影响性能的前提下强化系统的安全边界。这为未来基于 Rust 的安全内核设计提供了可行性参考,也为 Linux 兼容层的实现积累了可重用的技术经验和工程实践基础。
### 3. 课题研究获得的相关数据100字以上
在实验过程中,收集了包括内核构建时间、可执行镜像大小、系统启动耗时、文件系统读写性能及 MAC 策略开销等多维度数据。结果显示zCore 在功能完整性与兼容性测试中均保持稳定运行rCore 引入 MAC 后的文件读写延迟提升低于 5%,内存占用增加不超过 3%。这些数据验证了在保证安全性的同时Rust 内核依旧可以保持较高的性能表现。
### 4. 课题研究过程中所参考的文献与资料50字以上
- [rCore Tutorial v3](https://github.com/rcore-os/rCore-Tutorial-v3/tree/main)
- [Linux LSM](https://www.kernel.org/doc/html/v4.19/admin-guide/LSM/)
- [zCore](https://github.com/rcore-os/zCore)
## 课题研究过程中碰到的困难与解决办法
### 1. 课题研究中存在的问题50字以上
作为第一次接触操作系统开发的初学者,我在复现 rCore 的前半部分时就遇到了巨大的困难,尤其是在理解内核启动流程和编译环境配置方面。更为棘手的是,当尝试在 rCore 中实现 Linux 兼容层时,发现其支持有限、文档零散,导致调试过程频繁陷入停滞。文件系统章节更是陌生领域,缺乏对底层 I/O 机制的感性认知。
### 2. 针对问题采用的解决办法及结果50字以上
在多次构建失败和调试无果后,我决定暂时搁置 rCore 的 Linux 兼容探索,转向 zCore 以直接体验更完整的兼容机制。同时,利用 rCore tutorial 第六章的文件系统示例作为切入点,逐步阅读源码并添加注释,帮助自己理解 easy-fs 的设计逻辑。最终,我在 easy-fs 中引入了一个简化版的 MAC 机制,并通过测试验证其可行性。
### 3. 课题研究中存在的不足50字以上
由于时间和能力的限制本课题的实现仅停留在功能验证层面缺乏对性能开销、安全策略粒度及多用户场景下实际效果的深入分析。MAC 实现也相对初级,仅覆盖了文件读写权限控制,尚未涉及更复杂的进程间通信安全与动态策略调整。文档化与代码可移植性方面也有待改进。
### 4. 对于本次课题研究所涉领域未来的学习想法和研究规划50字以上
未来我计划系统学习操作系统原理,尤其是进程调度、虚拟内存和文件系统的内部机制。同时,将在 zCore 平台上继续探索 Linux 兼容层的深度优化,并尝试将 MAC 扩展到更广的安全域。长期来看,希望能够实现一个基于 Rust、兼具高性能与高安全性的教育型操作系统原型。
## 参与本次实践工作站的学习心得与体会
作为第一次接触操作系统开发的新人,这次实践让我从最初的茫然,到逐渐能够跟上项目节奏。虽然一开始在构建和调试中频频受挫,但随着阅读文档、查找资料、请教同学,我逐渐学会了独立分析问题和寻找解决方案。这种能力的提升,比单纯完成某个功能更宝贵。
在实践中,我也对国产操作系统有了更多思考。一方面,我们有越来越多的优秀项目和人才,基础设施不断完善,看到国产系统逐步走向成熟令人振奋。另一方面,生态不完善、文档缺失、社区活跃度不足等问题,依然可能成为发展瓶颈。这让我既充满期待,也心存担忧。
通过这次工作站的学习,我不仅学到了一些系统原理,更收获了耐心、细致和自我驱动的学习方法。未来,我希望能继续关注国产系统的发展,用自己有限的能力参与建设,为这一领域贡献哪怕微小的力量。

109
Report-mid.md Normal file
View file

@ -0,0 +1,109 @@
# 中期
标题:信息系统安全领域课题研究之操作系统安全方向
## 研究背景与研究意义
### 1. 选题背景100字以上
操作系统作为计算设备的核心枢纽,承担着硬件资源管理、应用支撑与安全保障等基础职能,其安全性直接关系到信息系统的整体可靠性与抗攻击能力。近年来,随着云计算、物联网、人工智能等新兴技术的高速发展,内核漏洞利用、内存越界访问、权限滥用等安全威胁愈加突出。尤其在国产化替代与自主可控的背景下,如何在保障生态兼容性的同时构建更高等级的安全机制,已成为亟待解决的关键问题。
### 2. 研究目的100字以上
本研究旨在结合操作系统安全理论与实际开发实践,探索基于 Rust 语言的内核安全机制创新与生态适配方案。在实践中,先通过复现 rCore 完成对内核结构与启动流程的理解,再转向 zCore 体验 Linux 兼容层的运行模式,最终在 rCore tutorial 第六章的文件系统中实现 MACMandatory Access Control强制访问控制机制。通过这一过程验证 Rust 内核在内存安全、访问控制和国产化适配方面的可行性,为构建高安全等级的国产操作系统提供参考。
### 3. 研究意义100字以上
在信息技术应用创新(信创)战略的推动下,我国操作系统正从“替代可用”迈向“自主高性能、全栈可控”的发展阶段。非 Linux 技术路线的安全内核设计,不仅有助于摆脱对单一生态的依赖,更有利于在源头上减少内存安全类漏洞。本研究通过在 Rust 内核中引入 MAC 安全机制,并验证其在兼容生态下的运行可行性,补充了现有国产系统在安全策略设计上的实践案例,对构建自主可控、安全可依赖的数字基础设施具有参考价值。
### 4. 研究边界50字以上
本研究聚焦于通用型与国产化操作系统的安全机制,重点探讨基于 Rust 内核的内存安全优化、访问控制设计与生态适配问题。不涉及硬件物理安全、应用层业务防护及非操作系统类安全技术,亦不包含专用嵌入式或实时系统的安全方案。
## 国内外研究现状及理论基础
### 1. 国外研究现状100字以上
2025 年 openSUSE Tumbleweed 及 Leap 16 将默认 MAC 机制从 AppArmor 切换为 SELinux因其提供更精细的标签策略Type Enforcement与多级安全模型但策略复杂度显著增加。策略管理工具链待完善。
### 2. 国内研究现状100字以上
vivo 开源的蓝河操作系统内核BlueOS Kernel是全球首款面向嵌入式/移动设备的全栈 Rust 内核,通过编译期所有权检查消除内存漏洞(如缓冲区溢出),最小内存占用仅 13KB使用 ARM 架构RISC-V 指令集。目前该技术处于领先位置,有着全栈覆盖、轻量化设计的技术特点。
[zCore](https://github.com/rcore-os/zCore?tab=readme-ov-file)是使用rust对[zircon](https://fuchsia.dev/fuchsia-src/concepts/kernel?hl=zh-tw)的重写实现了对Linux生态的兼容。
### 3. 国内外研究综述100字以上
<!-- 国内外研究在内存安全与国产化生态方向呈现差异化竞争,但共性短板集中于形式化验证深度不足、生态碎片化及高安全场景适配滞后。未来需强化“理论验证-产业落地-生态协同”的全链条创新。 -->
操作系统和核心要点在于生态。只有以大量用户为基础构建的完整生态才能决定系统的安全性能否得到关注,从而能够及时发现和预测问题,维持系统的长期安全性并适应新的安全策略。
<!-- Linux作为开源项目拥有完整的生态和优秀的安全策略管理但以移除俄罗斯贡献者名单事件为例Linux系统有被政治化利用的趋势这违背了因此参考国内的技术政治和管理政治情况国内的自主生态系统或将拥有适当的必要性。 -->
Linux 作为开源项目,拥有相对完善的生态体系与成熟的安全策略管理能力。然而,以移除俄罗斯贡献者名单事件为例,其社区治理与技术决策出现被政治化利用的趋势,这在一定程度上违背了开源精神中“技术中立、开放协作”的核心理念。鉴于国内技术与管理领域的政治环境特点,构建自主可控的本土操作系统生态体系不仅是保障安全与稳定发展的战略选择,也在全球技术格局中具有一定的必要性与现实意义。
国内部分操作系统在发展过程中更注重用户界面、交互体验及市场推广等表现层面的建设,而对底层架构的自主设计与核心技术积累投入不足。例如,以鸿蒙系统为例,其在分布式体验与跨终端适配方面取得了一定成果,但内核层面仍以修改后的 Linux 内核或 LiteOS 为基础,缺乏从零构建的完整内核体系。这种“上层创新—底层依赖”的模式在短期内有助于快速占领市场,但在长期竞争中可能导致核心安全能力与技术演进受制于外部生态。同时,由于缺乏统一的技术标准与接口规范,国产操作系统生态呈现碎片化局面,应用适配与安全策略迁移成本居高不下,制约了整体安全体系的成熟与可持续发展。
<!-- 总体来看,国外研究在访问控制模型的精细化与高安全场景适配方面积累深厚,而国内研究在内存安全的底层防护与国产化技术栈构建方面展现优势。差异化竞争的同时,双方均存在共性短板:形式化验证覆盖度与深度不足、生态碎片化导致跨平台安全策略迁移困难、高安全场景下的性能与兼容性折中问题未得到充分解决。未来的发展应围绕“理论验证—产业落地—生态协同”构建闭环,推动安全机制与操作系统生态的深度融合,从而在保障系统安全性的同时保持功能与性能的持续演进。 -->
## 研究的主要内容及框架
### 1. 研究的主要内容100字以上
1. **内存安全机制的革新**
借鉴 rCore 等 Rust 实现的操作系统内核设计思想,引入编译期所有权与借用检查机制,结合内存隔离与安全分区技术,提升多进程、多租户环境下的内存访问安全性。
2. **访问控制框架融合创新**
尝试将传统 DAC、MAC 与基于能力Capability-Based的访问控制模型进行融合。
3. **国产化生态兼容与落地**
在 rCore 实验平台上进行国产硬件适配RISC-V尝试实现linux syscall或使用用户态 Linux 内核兼容Linux生态。
4. **机密计算与高安全场景适配**
研究将可信执行环境TEE与全同态加密等机密计算技术集成到操作系统内核中为金融、国防等高安全场景提供敏感数据的隔离与保护能力。
### 2. 研究的主要方法50字以上
采用“理论分析—原型构建—实证评估”的递进研究路径:
- 对现有操作系统安全机制进行文献调研与理论建模;
- 基于 rCore 平台实现内存安全、访问控制及国产化兼容等原型功能;
- 通过功能性测试、安全性评估与性能基准对原型进行验证与改进。
### 3. 研究的逻辑框架技术路线50字以上
本研究以 rCore 平台为基础,依次完成内存安全机制设计、访问控制模型融合、国产化生态适配与机密计算集成,形成可验证的内核原型;在此过程中结合安全性分析与性能优化,最终形成适配国产化生态的高安全操作系统技术路线。
### 4. 研究的过程计划(参照开题报告中关于“研究进度与时间安排”的具体内容进行细化)
- 7月 - 8月对现有操作系统安全机制进行文献调研
- 8月 - 9月rCore、zCore试验
- 8月 - 9月对rCore安全性增添可行性进行调研
### 5. 研究的创新价值点50字以上
本研究在内存安全、访问控制与机密计算三方面形成多层次融合创新:
通过 Rust 编译期机制与内核安全分区提升内存防护能力;
在访问控制中实现 DAC、MAC 与 Capability 的有机融合;
面向国产化生态实现软硬件一体化安全适配,为高安全场景提供可落地的操作系统安全方案。
## 课题研究的实施情况(具体的研究情况记录)
### 1. 准备阶段2025年 月 日 - 2025年 月 日)
围绕操作系统安全主题,梳理国内外主要研究方向及其技术痛点,最终确定以 Rust 内核为平台,聚焦内存安全强化、访问控制策略优化、国产化生态兼容性验证三方面展开实践研究。
### 2. 实践阶段2025年 月 日 - 2025年 月 日)
先复现 rCore 以掌握内核结构与启动流程,再转向 zCore 体验 Linux 兼容机制,最后在 rCore tutorial 第六章文件系统中实现简化版 MAC 机制,并进行功能验证与性能初测。
### 3. 课题研究现阶段计划完成情况
已完成 Rust 内核安全机制的初步实验与功能验证,收集了 MAC 策略在文件访问中的性能数据,并对兼容层的可行性进行了测试评估。
## 课题研究下一阶段任务计划
### 1. 下阶段研究内容与目标
扩展 MAC 策略适用范围,构建更细粒度的权限模型;收集运行日志与性能数据,形成可对比的安全与性能分析结果。
### 2. 确保下阶段研究计划按时完成的主要措施
制定分阶段目标,按日跟踪进度,每周回顾并调整计划,确保功能扩展与数据收集按时推进。