Chinaunix首页 | 论坛 | 博客
  • 博客访问: 47973
  • 博文数量: 37
  • 博客积分: 1800
  • 博客等级: 上尉
  • 技术积分: 451
  • 用 户 组: 普通用户
  • 注册时间: 2010-11-29 19:56
文章存档

2011年(9)

2010年(28)

我的朋友

分类: LINUX

2011-01-06 17:44:51

BUG_ON函数

BUG_ON是一个函数接口,一般开发人员自己实现相关函数内容,一般用来判断内核是否出现问题,如果参数为真的话,证明内核出现了bug,打印BUG信息,然后调用PANIC函数,让系统panic。

一些内核调用可以用来方便标记bug,提供断言并输出信息。最长用的两个是BUG()和BUG_ON()。当被调用的时候,它们会引发oops,导致栈的回溯和错误信息的打印。为什么这些声明会导致oops跟硬件的体系结构是相关的。大部分体系结构把BUG()和BUG_ON()定义成某种非法操作,这样自然会产生需要的oops。你可以把这些调用当作断言使用,想要断言某种情况不该发生:
if (bad_thing)
BUG();
或者使用更好的形式:
BUG_ON(bad_thing);

转自: http://blog.chinaaet.com/detail/3347.html

阅读(754) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2011-03-08 14:03:58

很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com