需求点:
需求1: 实现AllocBitMap
内核目前已经实现StaticBitMap,这个cpumask结构体内部是个bitmap,因此需要实现动态分配内存的bitmap。
需求2: 参考linux的cpumask结构体的功能,实现cpumask
参考链接: https://code.dragonos.org.cn/xref/linux-6.1.9/include/linux/cpumask.h#19
为了方便静态测试,这个cpumask需要独立写成一个crate放在kernel/crates目录下。并且编写完备的测试用例。
同时在内核的kernel/smp/cpu/mod.rs
内通过pub type来导出这个类型。
(因为Linux的NR_CPU是个内核编译配置导出的值,因此rust里面写的话,cpumask结构体应当在内核里面重新导出类型以便传入“最大CPU数量”的参数
联系方式
有意参与的同学请回帖接任务~