2023-01 OS小组会议纪要
0130
CY:
- 我们的主线是一个以三年为周期的计划,第一个阶段的事是Linux模块化。
- 对工程师的要求:熟悉Rust和Linux,熟悉操作系统的结构,能写模块化的库。
- 要做的事情:模块化的内核,修改内核里的执行环境,rCore和zCore的重构。
- R4L可以分为两个小组:一个是关于内核,一个是关于重构。
- 工程师的任务:
- SZX搭建多建构下Linux的Rust环境
- CL关于块设备驱动模块化的展示
- XLY关于网络设备驱动模块化的展示
0119
CY:
- CL和YJB做报告,并顺便询问 BHY, JYK, YDR的进展。
CL:
介绍Linux里Rust写的NVME驱动。
CY:NVME的Rust驱动可以独立出来,放入Linux吗?
CL:是可能的。
CY:我们希望做一个在各OS(rCore, zCore, Linux)都可用的NVME驱动库。好处是性能变化不大的情况下给各个OS用。
CY:希望在节后有一个demo。
CY:会后发一下相关的视频。
CY:基于什么判断标准来考虑的提取松耦合的部分用Rust来写?
CY:什么时候可以把我们的驱动嵌入进Linux?过完年后两周可以吗?
CL:可以试试。
CY:不同型号SSD对应的NVME驱动的差别?
CL:NVME是协议,不同型号SSD应该没区别。差异的部分体现在PCI上。
YJB:
介绍读xv6-net的进展。
CY:不是让你写驱动,而驱动上的网络协议栈(照着xv6用rust重写),比smoltcp简单但能完成基本功能。希望能在2月底完成。
0113
CY:
- 各位工程师介绍本周进展。
XLY:
介绍了网卡驱动方面的进展。完成了前期调研,准备开写了。
CY:把e1000的驱动给YJB,由他进行后续的开发。和他的交流要在微信群里,我可以看到进度,同时明确你们的方向不要偏了。
CY:你考虑下smoltcp和e1000的对接。
CY:U740的网卡驱动能跑起来吗?
XLY:还不能。
CL:
详细分析了用Rust写的NVME驱动。
CY:回家后能讲讲吗?初步定在周一。
CL:可以。
CY:我的期望是NVME驱动程序里和OS无关的部分能分离出来。
SZX:
- 把我们总结的若干“Rust for Linux”研究方向提交到blog仓库,WYF已进行了合并。
- 阅读完了Rcore Tutorial里关于virtio-blk驱动的内容。参考xv6-riscv的源码理解了virtio-blk设备的操作方法,作为对比阅读了xv6-public的源码理解了普通块设备的操作方法。