OSKernel2024-KeepOnOS
待办列表
- 异步运行时与异步改造
- 更换文件系统FAT32 -> Ext4
- 开启多核调度,目标为4核
- 移植到开发板上,成功上板运行
- 决赛测试用例
待修BUG:
- 内核trap有点问题
文档
OS总述:OS
OS启动加载用户程序开始测试:RUN
应用程序的执行过程和异常处理全解:APP
关于运行内存的问题解决:RAM
使用说明
本OS支持多架构,多平台运行,且已经充分解耦合,只需要修改对应平台的配置文件即可,该部分文件已经用平台或架构名来命名,不包含平台和架构名称的不需要做改动。
本仓库已经将架构写死为riscv64
,平台目前为qemu-virt
。
运行使用下列命令:
make run
如要更改测试用例,需要到apps/monolithic_userboot/src/main.rs
中,添加对应的测试用例文件名,并保证该文件在挂载的磁盘的根目录下可以找到:
/// 初赛测例
#[allow(dead_code)]
const JUNIOR_TESTCASES: &[&str] = &[
"brk",
"chdir",
...
"yield",
];
#[allow(unused)]
pub fn run_batch_testcases() {
let mut test_iter=Box::new(JUNIOR_TESTCASES.iter());
for testcase in test_iter {
axcomp::run_testcase(testcase);
}
}
即可加载运行新的测试用例。
用例执行结果输出到终端shell中。
参考资料
内核参考自rCore社区的宏内核版ArceOS:ArceOS