gpt4 book ai didi

linux-device-driver - 内核空间中的动态分配

转载 作者:行者123 更新时间:2023-12-04 05:28:05 24 4
gpt4 key购买 nike

我一直在尝试使用 malloc 分配空间在我正在处理的驱动程序的内核空间中(使用 malloc 是这里的一个约束;我不允许以任何其他方式分配空间),但是如果我尝试分配“太多”元素(大约 500 倍)小结构),实际上只分配了我所需空间的一小部分。

减少分配元素的数量对我来说没有问题。内核空间中的动态分配是否有可能导致我看到的行为的限制?

最佳答案

malloc是一个用户空间库函数。您不能在内核空间中使用它。有一个函数叫 kmalloc()它用于在内核空间中分配内存。

您可以使用 vmalloc()还有。我建议你阅读这个帖子 What is the difference between vmalloc and kmalloc?对 vmalloc() 和 kmalloc() 的一些说明。

而且我建议您在 SO 中搜索您的查询,然后提出问题。因为,已经有人问了here

关于linux-device-driver - 内核空间中的动态分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12950915/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com