@ -0,0 +1,12 @@ | |||||
challenge1: 实现内核态与用户态之间的来回切换 | |||||
状态:已完成,在branch master中的labcodes_answer/lab1_result | |||||
challenge2: 用敲键盘实现用户模式内核模式切换 | |||||
状态:已完成,在branch lab1_X中的labcodes_answer/lab1_result | |||||
完成人:尹治宏 (yinzhihong12@msn.com) | |||||
challenge3: 可以在真实x86机器上用grub bootloader引导ucore kernel | |||||
状态:已完成 | |||||
完成人:王欢 (mikewang.exe@gmail.com) |
@ -0,0 +1,9 @@ | |||||
challenge1: buddy system(伙伴系统)的page分配算法 | |||||
提示:参考“http://coolshell.cn/articles/10427.html | |||||
状态:未完成 | |||||
完成人: | |||||
challenge2: slub分配算法(任意大小的内存单元) | |||||
提示:参考 http://www.ibm.com/developerworks/cn/linux/l-cn-slub/ | |||||
状态:未完成 | |||||
完成人: |
@ -0,0 +1,15 @@ | |||||
challenge1:实现识别dirty bit的 extended clock页替换算法 | |||||
状态:未完成 | |||||
完成人: | |||||
challenge2:实现工作集页替换算法 | |||||
状态:未完成 | |||||
完成人: | |||||
challenge3:实现缺页率页替换算法 | |||||
状态:未完成 | |||||
完成人: | |||||
challenge4:实现LIRS页替换算法 | |||||
状态:未完成 | |||||
完成人: |
@ -0,0 +1,3 @@ | |||||
challenge1: 实现内核线程的按需分页(demanding page)机制 | |||||
状态:未完成 | |||||
完成人: |
@ -0,0 +1,7 @@ | |||||
challenge1: 实现用户进程的Copy on Write机制 | |||||
状态:未完成 | |||||
完成人: | |||||
#challenge1: 实现用户线程,且内核无法“看到”用户线程(即需要在用户态完成线程切换) | |||||
状态:未完成 | |||||
完成人: |
@ -0,0 +1,20 @@ | |||||
challenge1: 参考Linux 的CFS,实现简化的CFS调度算法(基于红黑树) | |||||
状态:未完成 | |||||
完成人: | |||||
challenge2: 参考Linux2.6的O(1)调度器,实现简化的O(1)调度算法 | |||||
状态:未完成 | |||||
完成人: | |||||
challenge3: 实现面向Real-time系统的RM/EDF调度算法 | |||||
状态:未完成 | |||||
完成人: | |||||
challenge4: 短作业优先(SJF)调度算法/高响应比优先调度算法 | |||||
状态:未完成 | |||||
完成人: | |||||
@ -0,0 +1,12 @@ | |||||
challenge1: 实现内核级的进程/线程抢占机制 | |||||
状态:未完成 | |||||
完成人: | |||||
challenge2: 参考Linux的RCU,实现简化的RCU机制 | |||||
提示: | |||||
http://www.ibm.com/developerworks/cn/linux/l-rcu/ | |||||
http://www.diybl.com/course/6_system/linux/Linuxjs/20081117/151814.html | |||||
状态:未完成 | |||||
完成人: | |||||
@ -0,0 +1,8 @@ | |||||
challenge1 参考unix的pipe/fifo机制,实现基于VFS接口的pipe/fifo机制 | |||||
状态:未完成 | |||||
完成人: | |||||
challenge 支持现有文件系统之外的其他文件系统的读写 | |||||
状态:未完成 | |||||
完成人: |
@ -0,0 +1,8 @@ | |||||
challenge1:完善ucore lab smp实现,扩展ticket lock机制(参考linux的ticket lock实现),能够在真实机器上把lab8跑起来,并能看出出smp 调度和同步互斥的特点 | |||||
状态:可基于田博的ucore lab smp当前实现(完成大部分) | |||||
完成人: | |||||
challenge2:改进并简化一个简化的CPU模拟器(这个简化CPU的目的就是为了支持ucore OS的进一步简化),把ucore lab8移植到此简化CPU上。 | |||||
状态:已有一个简化的CPU模拟器ex,一个简化的C子集编译器4c,一个基于此C子集的简化的xv6,4c编译的xv6可以运行在ex上。ex,4c,xv6的源码都在2000行以内。 | |||||
要求:改进简化CPU模拟器ex,使得它像一个稍微扩展一点的Y86,修改C子集编译器4c,支持改进的ex,把xv6改成lab1~lab8的code.体现lab1~lab8的特点。此项目比较有意思,有一定的综合性,给分也会偏多一些。 | |||||
完成人: |