XV6 内核中的动态内存分配



我想在Queue.cQueue.h文件中实现一个Queue结构(使用Node结构,类似于这里的C代码(,以便在内核中proc.c存储进程XV6

我不知道该怎么做,因为它需要使用malloc,但我不能在我从内核调用的方法中使用它。

为了实施和使用Queue,我可以使用什么?

你可能必须为内核实现类似于用户malloc代码(user/malloc.c(的东西。例如,查看文件 kernel/string.c。它的内容与user/ulib.c非常相似。这样,内核和用户空间就有了自己的函数版本,例如memset.

来自user/umalloc.c的代码不能只是复制并粘贴到内核版本中。您必须进行调整才能使其在内核空间中工作。例如,更改morecore如何增加分配器管理的空间......

相关内容

  • 没有找到相关文章

最新更新