You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
5 years ago | |
|---|---|---|
| .. | ||
| .cargo | 5 years ago | |
| src | 5 years ago | |
| .gitignore | 5 years ago | |
| Cargo.toml | 5 years ago | |
| Makefile | 5 years ago | |
| README.md | 5 years ago | |
| build.py | 5 years ago | |
README.md
Tutorial 第三章测试用例 part2
在第三章第二阶段中,需要在第一阶段的基础上实现一个抢占式调度的分时多任务系统。在 src/bin 目录下,我们可以找到四个应用程序:
00power_301power_502power_703sleep
像第一阶段一样,它们也需要被加载到不同的物理地址处运行。
应用被设计为运行在用户模式,批处理系统应运行在监督模式,它们都直接访问物理内存。
这一阶段需要实现的系统调用:
sys_get_time:获取系统当前的毫秒数,在应用03sleep中使用,可以简单估计所有应用运行的总时间。
阅读应用程序代码可知,三个 power 应用分别计算一个质数的幂次对另一个大质数取模的余数,由于次数很高在一个时间片之内无法完成,而它们又不会使用 sys_yield 主动交出 CPU 使用权,因此只能由内核进行强制切换。