kmallc和vmalloc返回逻辑地址?

时间:2014-04-12 05:42:55

标签: memory-management linux-kernel linux-device-driver kmalloc vmalloc

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

据我所知,

kmalloc:内核API可以物理分配几乎连续的内存。

vmalloc:内核API分配物理上不连续但几乎连续的内存。

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

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

1 个答案:

答案 0 :(得分:1)

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

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