Chinaunix首页 | 论坛 | 博客
  • 博客访问: 470188
  • 博文数量: 105
  • 博客积分: 2258
  • 博客等级: 大尉
  • 技术积分: 922
  • 用 户 组: 普通用户
  • 注册时间: 2011-08-23 13:21
文章分类

全部博文(105)

文章存档

2013年(1)

2012年(10)

2011年(94)

分类: LINUX

2011-10-19 10:02:36

   机制:需要提供什么功能
   策略:如何使用这些功能
2、内核功能根据任务完成的不同可划分成如下几部分:
  1)进程管理
  2)内存管理
  3)文件系统
  4)设备控制 
  5)网络功能
3、LINUX将设备分成三种基本类型:字符模块、块模块或网络模块
4、为什么编绎2.6的模块需要构建好的内核树,而2.4不用
    2.6之前的版本只需要有一套内核头文件就够了,但2.6内核的模块要和内核源代码树中的目标文件连接,通过这种方式,可得到一个更加健壮的模块装载器.但也需要这些目标文件存在于内核目录树中.所以需要先在自己的系统中先配置并构造好内核树.
5、printk和printf的最大的不同是printk缺乏对浮点数的支持
6、当前进程的获取
   #include
  然后就可以使用current->pid。。。。    current为指向task_struct的指针
7、应用程序在虚拟内存中布局,并具有一块很大的栈空间。栈是用来保存函数调用历史以及当前活动函数中的自动变量的。但内核只具有非常小的栈,它可能是和一个4096字节大小的而那样小。我们自己的函数必须和整个内核空间调用链一同共享这个栈。因此,声明大的自动变量并不是一个好主意,如果我们需要大的结构,则应该在调用时动态分配该结构
阅读(1041) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~