0

虽然 kmalloc 和 vmalloc 上已经有很多线程在运行,但我没有得到确切的答案,所以我把它放在这里。

据我所知,

kmalloc :它是内核 API,它分配物理以及虚拟连续的内存。

vmalloc :它是内核 API,它分配物理上不连续但实际上是连续的内存。

现在我的问题是:在这两种情况下(kmalloc 或 vmalloc)地址或说两个 API 返回的指针是逻辑地址正确吗?

在 linux 内核中,内存管理对我来说一直是灰色的部分,所以如果我的理解有误,请纠正我。

4

1 回答 1

1

是的,可以在您的代码中取消引用指针以访问分配的内存。

我认为那些返回另一种内存引用的函数不会返回void*。它们通常返回unsigned long或 typedef 的类型。

于 2014-04-12T12:05:11.443 回答