第15页 从内核出发
- 章节名:从内核出发
- 页码:第15页
一、内核开发的特点 (1)不能访问C库和标准的C头文件: 对于内核来说,完整的C库---哪怕是它的一个子集,都太大且低效了。 printk()与printf()之间的一个显著区别在于,前者允许你指定一个标志设置优先级。 (2)内核编程时必须使用GNU C,内核中使用到的扩展包括: 内联函数:实践中一般在头文件中定义;为了类型安全和易读性,优先使用内联函数而不是复杂的宏。 内联汇编:允许在C 语言中嵌入相应体系结构的汇编指令。 分支声明:likely()标记一个分支通常为真,unlikely()相反。 (3)缺乏像用户空间编程时那样的内存保护机制: 内核中内存不分页,每用掉一个字节,物理内存就少一个字节。 (4)难以执行浮点运算: (5) 容积小而固定的栈: 32位机器上内核栈为8KB,64位机器上为16KB。 (6)由于内核支持异步中断、抢占和SMP,因此必须时刻注意同步和并发: (7)需要考虑可移植性的重要性。
14人阅读
杉木对本书的所有笔记 · · · · · ·
-
第2页 Linux内核简介
一、Unix强大的根本原因: (1)Unix很简洁:不像其他动辄提供数千个系统调用并且设计目的不...
-
第15页 从内核出发
> 查看全部2篇
说明 · · · · · ·
表示其中内容是对原文的摘抄