周报一
进展同步
分析题目功能
实现RISCV架构OS内核,并具有以下功能
- 启动和系统初始化(裸机系统)
- 内存管理
- 进程与中断
- 文件系统
- 系统调用
- 命令解释器
- IO设备(外接传感器,读取并显示数据)
制定开发计划
时间 | 目标 | 进度 |
---|---|---|
3月20日-3月26日 | 需求分析,搭建相关环境,实现裸机系统 | 已完成 |
3月27日-4月2日 | 批处理系统与分时多任务 | |
4月3日-4月9日 | 内存管理,进程管理 | |
4月10日-4月16日 | 文件系统,并发机制 | |
4月17日-4月23日 | IO设备 | |
4月24日-4月30日 | 备用时间 | |
5月1日-5月31日 | 论文撰写 |
进展分析
本周一拿到具体题目要求后立刻做了需求分析,整体来看时间紧任务重,需要不断补充各方面的知识。
在需求分析基础上,查阅一些相关教程,最终选择了rcore作为主要参考。
本周在ubuntu上搭建了相关工具链和模拟器,并实现了裸机系统。目前使用qemu模拟riscv,后续考虑部署到K210或其他开发板
下周目标
批处理系统与分时多任务。
具体包含
- 通过批处理支持多个程序的自动加载和运行
- 支持跨特权级的系统调用功能
- 抢占式分时多任务
周报二
进展同步
- 较为有体系的学习了一下rust语言
- 迁移项目至自己服务器上
- 通过批处理支持多个程序的自动加载和运行
- 抢占式分时多任务[delay]
进展分析
系统补了一下语言,本来想边学边补,但是发现过于零散,不断打断os编写反而效率不高。于是先补了下rust,抢占式分时多任务delay到下周
另外迁移开发环境从GitHub Classroom到自己的服务器上,性能更佳,节省编译时间。
下周目标
- 抢占式分时多任务
- 内存管理
周报三
进展同步
时间 | 目标 | 进度 |
---|---|---|
3月20日-3月26日 | 需求分析,搭建相关环境,实现裸机系统 | 已完成 |
3月27日-4月2日 | 批处理系统与分时多任务 | 已完成 |
4月3日-4月9日 | 内存管理,进程管理 | 已完成 |
4月10日-4月16日 | 文件系统,并发机制 | 已完成 |
4月17日-4月23日 | IO设备 | 进行中 |
4月24日-4月30日 | 备用时间 | |
5月1日-5月31日 | 论文撰写 |
进展分析
返校后的近两周,实现了基本的os,并部署到qemu以及真实开发板MaixDock上。
下周目标
io设备管理,支持两个iot设备(摄像头,显示屏)
并同步进行论文编写