所以我编辑了slob来使用最佳匹配算法,无论是在寻找合适的页面还是块时。但问题是,我该如何测试它?
我应该只编写用户级的代码来执行malloc几次吗?我是否应该让一个模块对kmalloc做同样的操作?
我们将非常感谢您的帮助!
最佳答案
SLOB是Linux内核对象的内存分配器。所以,它不同于用户模式堆内存管理器。要测试它(从slob分配内存),需要使用kmalloc或kmem_cache_alloc。
或者,您可以尝试创建linux内核对象,例如进程、从用户空间打开的文件,以从slob分配内存。如果您的用户模式应用程序创建内核对象(例如打开文件),那么您应该注意到slob内存空间的减少。相反,如果您从应用程序中销毁内核对象(例如关闭文件)。
但是没有针对linux内核的单元测试或自动测试。-How is the Linux kernel tested ?