Chinaunix首页 | 论坛 | 博客
  • 博客访问: 794202
  • 博文数量: 858
  • 博客积分: 10000
  • 博客等级: 上将
  • 技术积分: 5015
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-29 17:43
文章分类

全部博文(858)

文章存档

2011年(1)

2008年(857)

我的朋友

分类: LINUX

2008-08-29 17:52:49

 
  一直以来都认为精通linux是大牛的基本功,但是自己却总是懒于去认真的学习,只想不做假把式,现在的工作就是完全基于linux,感觉很是吃力。幸好,我没有很强的自觉性,却有很强的适应力和抗压力。既然工作就是这个,那我就拼力学就是,呵呵,现在把这几天的心得留下,最好以后别忘,但就是忘记了也能找到记忆

  首先,linux是一个真正的多任务多用户的操作系统,允许多个用户同时登录操作,甚至同一个用户也能同时多次登录,互相之间并不影响。但是作为一个稳定的操作系统,必须保护唯一的内核能够不受冲突的正常工作。于是就有了内核态与用户态这样两个概念,简单的说,就是内核和用户分别占用不同的内存空间独立工作,互不干扰。如果用户需要进行底层操作,则必须向内核发出请求,等内核接受了才由内核接过任务,执行完毕后,返回结果。

  这里一个很重要的地方是用户态和内核态的通讯,网上看到大概有九种方式。目前了解的只有一种:netlink。首先由kernel_netlink_create()创建,kernel中响应用户态请求的程序以module形式存在,在Makefile中要增加编译module的语句,然后通过insmod把module安装上,这样module才可以正常使用。在用户态中可以做循环等待,条件满足的时候用socket()把消息打包,然后发送给内核态,内核态接受消息后就运行module。这样就实现了用户态和内核态的通讯。

关于linux学习的一点心得关于linux学习的一点心得关于linux学习的一点心得关于linux学习的一点心得关于linux学习的一点心得关于linux学习的一点心得关于linux学习的一点心得关于linux学习的一点心得关于linux学习的一点心得关于linux学习的一点心得
阅读(194) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~