Agri
驱动牛犊
驱动牛犊
  • 注册日期2002-02-26
  • 最后登录2002-11-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1500回复:3

如何在驱动程序中分配大于128kbytes的内存?

楼主#
更多 发布于:2002-08-03 18:31
我正在写LINUX平台2.4下的pci卡的驱动程序。要用DMA传送数据,希望单次DMA数据大于128kbytes。由于kmalloc有128kbytes的限制,我该如何做呢?请高手赐教!!谢谢
talent
驱动牛犊
驱动牛犊
  • 注册日期2002-01-25
  • 最后登录2003-02-18
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-08-05 08:36
在2.4核心中可以使用__get_free_pages(alloc_page)分配到2^10个页面,地板本的可能限制连续分配128k的!
letree
驱动牛犊
驱动牛犊
  • 注册日期2002-08-04
  • 最后登录2016-01-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-08-06 19:53
在我的系统上(2。4。8)上只能分到2^8个页面:(
2。0内核只能分到128K左右。
huwanquan
驱动牛犊
驱动牛犊
  • 注册日期2002-07-08
  • 最后登录2004-08-17
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-08-24 05:22
我的建议是稍微修改一下内核, 在关于slab_cache分配初始化时,加大连续分配的页数.
游客

返回顶部