2023-01 OS小组会议纪要
欢迎参加Rust_For_Linux研究学习小组
不同操作系统内核可重用的Rust Crate设计与实现
Rust 是一种“多范式安全系统编程语言”,在开源领域呈现出滚雪球般的势头不断壮大。当前已经出现了多种基于Rust的实验型操作系统项目,而且也已经出现在主流的操作系统中。2022年12月12日,Linux 6.1 正式发布。Linux 6.1 的一个主要升级是把已经开发近一年多的Rust for Linux子系统加入主线,这是对 Rust 在Linux内核上的重要突破。今后将可以使用Rust开发操作系统内核模块,并用于不同操作系统中,而Rust化的实时优化Linux内核和Rust RTOS将成为重要新技术方向。
本课程计划定期讨论和研究 “不同操作系统内核可重用的Rust Crate设计与实现” ,并基于Linux内核和Rust RTOS,着重开展以下三个研究子方向的技术工作:
2022开源操作系统训练营第一阶段总结-jiaxianhua
2022年开源操作系统训练营第一阶段总结-kxxt
整体感受
这是我第一次参加这样的开源课程,也是我第一次深入的学习操作系统的相关知识
(之前学过 nand2tetris 不过学的比较浅)。整体的课程体验非常的好,这是我
第一次见到使用 GitHub Classroom 做为教学平台的国内课程。
除此之外,整个实践过程非常符合开源软件的开发方式,
这让我这种习惯了开源软件开发流程的人感到十分的舒适:
- 所有资料都公开在 GitHub 上
- 实验代码在提交之后有 CI 自动完成评测和分数上报
- 学生可以给仓库发 PR 来为课程做改善(感觉合PR 的频率稍微有点低,后来我就直接给 rCore Tutorial 提 PR 了,rCore 这边合的很快)
- 直接使用 GitHub Issues 做问答(虽然回复的人比较少)
- 甚至用上了当时还在预览中的 Codespaces
此外,课程的直播网站设计的也很棒,甚至在校园网的条件下比企鹅会议流畅。
学习记录和各章节报告的 repo: https://github.com/kxxt-sduwh/rust-os-learning-record
2022开源操作系统训练营第二阶段总结-杨金博
2022 开源操作系统训练营第二阶段总结
笔记仓库 https://github.com/yfblock/OS-Tranining-Camp
第二阶段rcore-N 仓库 https://github.com/yfblock/rCore-N
rcoreN学习总结
所谓用户态中断就是在用户态发生的中断,在发生中断时不需要进入内核态,不需要切换特权级。最开始是应用在当前进程中,因此在发生一些中断时不必频繁的切换上下文,一部分中断可以直接在用户态进行处理,减少相关的性能损耗。在fork中也能对数据进行处理,在发生进程间通信时,可以不仅如此内核态而在用户态直接处理,同样也可以减少性能的损失。
2022开源操作系统训练营第二阶段总结-陈林峰
在第二阶段的活动中,我选择的是rCore的进一步扩展,因为时间与rCore移植比赛的重合性,我选择了在完善移植工作并结束比赛后才进一步做扩展相关的工作,因此可能对于扩展部分的改进不是很多。
2022开源操作系统训练营第二阶段总结-朱懿
2022 开源操作系统训练营第二阶段总结
2022.09 朱懿
在第一阶段学习了rust和操作系统实验的基础上,第二阶段我基于我的兴趣,选择了虚拟机的方向,经过前期的调查了解研究,发现,在夏令营第二阶段设计的虚拟化的几个方向中,对于偏向硬件的虚拟机方向,已经有人做出了实现。然而我注意到,目前为止,所有的工作仍然没有人注意到操作系统级的虚拟化的方向,也就是容器化的方向。因此,在自己感兴趣的前提下,第二阶段我选择了容器化的这个虚拟机的方向进行学习和研究。
(当然,也因为没有前人在这方面的相关工作,我在这方面的学习研究,不能说举步维艰吧,只能说从0到1)
因此,尽管最后在zcore上面的改造不算成功,但我会尽量详尽的结合我在项目里面的log记录,省却大量无用的吐槽,希望为后来者提供一些可行的资料和设计思路。
2022开源操作系统训练营第二阶段总结-刘逸珑
2022开源操作系统夏令营第二阶段-模块化rcore-鹿敏宽
我第二阶段选择的主题是模块化rcore,刚开始想的比较美好,这个模块化rcore项目和第一阶段都属同一个项目,做起来难度应该不大;并且模块化正是程序员所追求的一种境界。但是一着手实现就有很多问题了。第一个问题是怎么实现模块化,有没有一种切实可行的一种方法?此外,虽然经过了操作系统夏令营的洗礼,但是我依然缺少对操作系统底层相关的技术的理解。比如应用程序如何加载,这过程中使用到了什么命令等等细节的问题。
无奈何只能从头开始看rcore-tutorial的文档了。因此我第二阶段做的工作并不是模块化rcore,而是按照rcore-tutorial文档复现出一个操作系统。
rCoreCamp2022第二阶段报告-werifu(陈思宇)
第二阶段报告
背景与已有工作
仓库地址: https://github.com/chenzhiy2001/code-debug
VSCode Debugger Extension
VSCode 为了方便图形化地调试(而不是在终端里手输命令去获取信息),提供了一套对 Debugger 的 UI 支持,但是不同的语言有不同的调试器,无法直接让 UI 去调用相应调试器,因此 VSCode 提出了 Debug Adapter 作为 UI 与 Debugger 的连接桥梁,一个调试器插件就是一个实现了这样一套接口的对象,其协议叫做 Debug Adapter Protocol。