发布时间:2012-12-28 11:16:53
daemon进程是后台守护进程,有时候也叫精灵进程(agent).linux 下server都是daemon进程。相信大部分开发人员都知道如何去写一个daemon进程。但是另一方面,大部分人不知道为什么要这么做,不少人是从某个地方copy一个函数,拿来主义。但是具体为什么这么实现,却不是很透彻。 见过一些面试官或被面试人。很多人解释daemon进程存在的理由是因为僵死进程。或者输入输出。其实和这些东西一毛钱关系都没有。daemon函数存在的原因是因为控制终端由于某些原因(如断开终端链接)会发送一些信号的原因。而接收进城处理这些信号缺省动作会让进程退出。这些信号会由于终......【阅读全文】
发布时间:2012-12-28 11:09:20
在Linux系统中,按键和触摸屏的设备驱动的实现方法是利用linux输入子系统。 因为input子系统已经完成了字符驱动的文件操作接口,所以编写驱动的核心工作是完成input系统留出的接口,工作量不大。但如果你想更灵活的应用它,就需要好好的分析下input子系统了。 一、input输入子系统框架 下图是input输入子系统框架,输入子系统由输入子系统核心层( Input Core ),驱动层和事件处理层(Event Handler)三部份组成。一个输入事件,如鼠标移动,键盘按键按下,joystick的......【阅读全文】
发布时间:2012-12-16 10:40:18
2.4内核注册驱动要用:int register_chrdev (unsigned int major, const char *name, struct file_operations *fops);2.4内核注销驱动要用:int unregister_chrdev( unsigned int major, const char *name );2.4内核驱动注册完后,要用以下代码创建设备文件 static devfs_handle_t devfs_handle; devfs_handle = devfs_register( NULL, D......【阅读全文】