Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4006043
  • 博文数量: 536
  • 博客积分: 10470
  • 博客等级: 上将
  • 技术积分: 4825
  • 用 户 组: 普通用户
  • 注册时间: 2006-05-26 14:08
文章分类

全部博文(536)

文章存档

2024年(3)

2021年(1)

2019年(1)

2017年(1)

2016年(2)

2013年(2)

2012年(10)

2011年(43)

2010年(10)

2009年(17)

2008年(121)

2007年(252)

2006年(73)

分类: LINUX

2007-06-01 22:24:44

今天遇到一个错误找了好长时间。

原来是在函数中静态分配的内存太大!
如:
int my_fun(void)
{
  char aa[1024];

  /* insert your code here! */
}

原来自己也知道这样做不好,在用户态这样使用大的内存系统会自动在堆上面分配的,但在内核态就会直接报错的,有时候让你错的自己都不知道是什么地方错了。

当然我也试个在核心下有时候也不会出错,但最好还是不要这样使用,一旦分配的内存太大时就使用malloc, kmalloc, vmalloc吧!!

千万别忘了!!!
阅读(3292) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~