Skip to content
Luoyuan Xiao edited this page Aug 5, 2022 · 21 revisions

可以做的一些大或小事情

基于基本测例来补充syscall功能和Fix Bug

目前没有通过测试的基本测例

主要问题分析:

没有实现的syscall
mprotect
futex
brk
tkill
getrlimit
socket
membarrier
get_robust_list

对Out of Memroy的处理

panicked out of memory

改进异步支持

网络支持

  • zCore支持 smoltcp
  • smoltcp的异步化改进

驱动支持

  • 增加和完善 支持用户态驱动的zircon syscall,这样可以重用fuchsia driver.

其他

  • 支持图形
  • 支持TUI
  • pthread 系列的测例(pthread支持不够)
  • 浮点的上下文保存与恢复
  • 基于github CI的更全面和广泛的自动测试
  • 基于gitlab CI的更全面和广泛的自动测试

Small Goals (2021.08 开源操作系统夏令营第二阶段)

  • 增加基于github CI/CD的zircon core test on baremetal x86-64自动测试环境
  • 增加基于github CI/CD的zircon core test on baremetal riscv-64自动测试环境
  • 增加基于github CI/CD的linux libc test on baremetal riscv-64自动测试环境
  • linux musl libc test中没有通过的测试用例在baremetal x86-64上测试通过
  • 在zCore中增加对浮点应用的支持

Little Plans(2020提出)

  • (完成70%) 是在linux启动后host由zcore based hypervisor接手,linux运行到guest态
  • (完成70%) 扩展目前我们写的zcore,实现zircon的全部syscall,支持fuchsia应用和驱动(绝大部分在用户态)
  • (完成90%) 扩展目前我们写的zcore,实现一个日志文件系统,
  • (完成80%) 一个网络协议栈(smoltcp)\
  • (完成100%) 对应的block驱动(virtio)
  • (完成100%) 一个nic驱动(e1000)
  • (完成30%) 支持150个左右的linux syscall
  • (完成30%) 支持类似redis, nginx类似的典型linux应用
  • (完成90%)把async机制实现在zcore kernel内部,实现高效的IO处理能力
  • (完成100%) 在x86-64上,用rust重新实现类似uefi (rboot bootloader)
  • (完成100%) 在riscv-64上,用rust重新实现类似opensbi ( rustsbi)
  • (完成60%)在zcore上写应用,控制四足机器狗
  • (完成20%)用形式化的方法分析我们写的rust-based hypervisor的接口是否安全可靠(safety)
  • (完成10%)是在一个IoT设备(如手表)上实现zcore