当前位置: 技术问答>linux和unix
uClinux系统内核2.6,使用GFP_KERNEL | GFP_DMA分配内存失败!
来源: 互联网 发布时间:2015-11-24
本文导语: unsigned char *p; p = kmalloc(512,GFP_KERNEL | GFP_DMA); 分配内存失败, 但是,只用GFP_KERNEL就可以分配成功 请问这是什么问题? | 不好意思,不能解决LZ的意思,不过还是顺便说几句: uClinux好像...
unsigned char *p;
p = kmalloc(512,GFP_KERNEL | GFP_DMA);
分配内存失败,
但是,只用GFP_KERNEL就可以分配成功
请问这是什么问题?
p = kmalloc(512,GFP_KERNEL | GFP_DMA);
分配内存失败,
但是,只用GFP_KERNEL就可以分配成功
请问这是什么问题?
|
不好意思,不能解决LZ的意思,不过还是顺便说几句:
uClinux好像不支持虚拟地址的概念吧?直接用GFP_KERNEL参数,其结果与GFP_DMA相差不大,只不过GFP_DMA区获得的地址是低于16M的,不过在嵌入式芯片领域,DMA区并没有限定在16M地址之内,唯一要注意的应该是关于cache的处理,DMA是不能带cache的
uClinux好像不支持虚拟地址的概念吧?直接用GFP_KERNEL参数,其结果与GFP_DMA相差不大,只不过GFP_DMA区获得的地址是低于16M的,不过在嵌入式芯片领域,DMA区并没有限定在16M地址之内,唯一要注意的应该是关于cache的处理,DMA是不能带cache的
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。