zcore_tutorial_developers icon indicating copy to clipboard operation
zcore_tutorial_developers copied to clipboard

zcore_tutorial文档撰写工作以及单元测试工作组

zcore_tutorial_developers

zcore_tutorial文档撰写工作以及单元测试工作组

主要目的

建立这个仓库的主要目的为尽量减少重复的工作。由于每个人的学习程度不一样,导致前面的人遇到的坑可能后人还会碰到。为了让前人的工作能给后人一定的帮助,建立此仓库为后人提供支持。

主要要求

每个人尽量把自己学到的东西写成一个文档,做到低耦合、规范化,命名清晰。后人在前人的基础上迭代修改,最后项目完成的时候进一步整理一下,可以merge到zcore仓库。

主要相关链接

2020年操作系统专题训练大实验-zCore文档WiKi页面

zCore仓库

zCore代码文档

zCore-Tutorial

Zircon 官方文档

wrj,Rust语言操作系统的设计与实现

pql,zCore操作系统内核的设计与实现

Rust中的Async /Await

文件仓库目录描述

初步文档仓库(本仓库)

目标文档仓库(release版本的仓库)

本仓库中的目录说明:

  • src/chxx文件夹分别对应每一章节的内容
  • help目录是方便zCore程序分析的相关文档
  • drafts是指等待被整理进入src/chxx文件夹中的内容
  • img存放src/chxx文档中的所有图片,图表等
  • SUMMARY.md是对zcore_tutorial文档中各个章节的索引目录

现有的zcore_tutorial文档主要从这些方面展开描述

简明 zCore 教程 zCore 整体结构和设计模式 Fuchsia OS 和 Zircon 微内核 Fuchsia 安全原理

  • 内核对象

    • 初识内核对象
    • 对象管理器:Process 对象
    • 对象传送器:Channel 对象
  • 任务管理

    • Zircon 任务管理体系
    • 进程管理:Process 与 Job 对象
    • 线程管理:Thread 对象
  • 内存管理

    • Zircon 内存管理模型
    • 物理内存:VMO 对象
    • 物理内存:按页分配的 VMO
    • 虚拟内存:VMAR 对象
  • 用户程序

    • Zircon 用户程序
    • 加载 ELF 文件
    • 上下文切换
    • Zircon 系统调用
  • 信号和等待

    • 等待内核对象的信号
    • 同时等待多个信号:Port 对象
    • 实现更多:EventPair, Timer 对象
    • 用户态同步互斥:Futex 对象

zCore项目整理架构图

file