-
Notifications
You must be signed in to change notification settings - Fork 378
os tutorial os2atc
学习写OS不是那么难--基于RUST语言 && 面向RISC-V CPU
学习写操作系统内核很困难吗?我们认为这是过去的历史了。如果你有一定的基础,比如有数据结构和编程能力,且愿意学习新知识,比如学习RUST语言编程和RISC-V CPU的一些与OS相关的硬件知识,那么你会发现,也许学习写一个OS不是那么困难的事情。在这个tutorial中,我们讲介绍如何一步一步地设计并实现从OS加载,启动到能够运行应用程序的6个阶段步骤,让你体会到采用新技术和新思路来实现一个面向特定领域的OS不是那么困难。也许在未来的AIoT领域,你可以实现自己的OS。
由于场地有限,需要提前在 os2atc2019会议网站上报名参加os tutorial,且被通过(会有邮件回复确认报名成功)
人数限制:只有60个座位的实验室
有较强编程能力的高年级本科生,研究生和工程师;从事系统软件相关研究/开发的从业者。尤其适合:深入地系统化学习;追求技术细节和技术突破。 先修要求:1、较强编程能力;2、提前自学RUST语言编程 3、了解计算机组成原理和RISC-V CPU
12月15日上午 9:00~12:00
深圳市鹏城实验室 B栋14楼1409室
- 了解linux命令行方式的基本操作
- 了解git基本操作
- 学过编程,数据结构,组成原理,操作系统
- (推荐)安装了ubuntu 18.04 x86-64的笔记本电脑(能上wifi或4G网络)
- (推荐)推荐提前安装好基于docker的实验环境(看下面“建立实验环境”一节)
- (推荐)提前尝试下载/编译/运行 https://github.com/rcore-os/rCore_tutorial 中的代码(如果你熟悉linux/git/rust...)
要求有基本数据结构,算法基础,相对了解或熟悉C/C++/Java等编程.
要求有基本计算机组成原理,计算机系统结构基础。
- 自学PPT for RIS-V特权指令级架构
- 自学RISC-V手册:一本开源指令集的指南 重点是第10章
- 自学RIS-V特权指令级规范 重点是与OS相关的特权硬件访问的内容
请访问课程网页,验证码为:wfkblCQp
远程桌面实验环境中已经配置好运行实验所需的环境并clone了rCore_tutorial仓库到家目录下。
编译过程有可能有点慢,请耐心等待。
运行实验
本实验支持docker环境下开展,在docker hub上已有可用的docker环境,在当前目录下运行make docker
将会从云端拉取docker镜像,并将当前目录挂载到/mnt位置。参考的准备命令如下:
# ---在本机环境中的命令---
git clone https://github.com/rcore-os/rCore_tutorial # 取得os tutorial: rcore step by step 源码
cd rCore_tutorial # 进入实验项目目录
make docker # 建立本机docker环境并进入docker中的终端
# ---在docker实验环境中的命令---
cd /mnt
# 然后可以进行编译/qemu中运行实验。例如:
cd usr
make user_img
cd ../os
make build
make run
如有兴趣,也可以自行构建/调整docker镜像,相关的Dockerfile文件在当前目录下,我们提供了make docker_build
命令来帮助构建,详情请看Dockerfile和Makefile
- Rust-OS-comparison
- 视频:半个世纪过去了,是时候用Rust重写操作系统了吗?(CC字幕)
- 视频+PPT:金枪鱼之夜:陈嘉杰同学介绍 rCore v0.2.0 实现历程和进展
- PPT: 尝试用RUST写教学操作系统
- 9:00 开始
- 9:15 Intro结束
- 9:20 第一章讲完
- 9:45 第二章讲完
- 休息1
- 9:50 开始第三章
- 10:05 开始第四章
- 10:20 开始第五章
- 10:35 第五章讲完
- 休息2
- 10:40 开始第六章
- 10:50 开始第七章
- 11:00 开始第八章
- 11:10 总结 Demo
- 11:20 交流讨论
完成下列项目之一,即可完成毕业,我们会在网络上公布已完成的毕业项目和完成者名单