文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>LDD学习笔记_内核开发基础知识

LDD学习笔记_内核开发基础知识

时间:2010-06-03  来源:zjh_larm

1.      内核栈是非常小的,而且是被内核空间调用链共享的。因此尽量在内核中采用动态分配变量。内核态的堆是很大的,可以将整个系统空闲内存都视为内核堆。

2.      内核代码是不做浮点运算的。

3.      内核态下的同步与互斥问题是非常重要的。

4.      内核API函数中以双下划线(__)开始的函数是底层接口组件,一般不要使用。

 

 

内核符号表:表中包含了全局内核项的地址 -- 函数和变量。模块输出的符号将成为内核符号表的一部分,在别的模块中要使用这些函数或者变量之前声明为extern符号就可以了。

 

内核不能连接使用标准C库的函数,只能调用内核符号表中的实现了的函数,还好大部分C库函数在内核中都已经得到了实现。

 

内联函数:如果一个函数反复被调用,可以将这个函数声明为一个内联函数,函数会在它所调用的位置上展开,这么做可以消除函数调用和返回所带来的开销。编译器会把调用函数和展开的内联函数的代码一起优化。因为编译器会检查内联函数的安全性,所以优先使用内联函数而不是复杂的宏定义。还有内联函数定义的时候需要用static作为关键字。

相关阅读 更多 +
排行榜 更多 +
宝宝情商养成宝宝巴士

宝宝情商养成宝宝巴士

休闲益智 下载
燥热手机版

燥热手机版

飞行射击 下载
巨人狙击手安卓版

巨人狙击手安卓版

飞行射击 下载