Linux u盘助手(三)
来源:互联网 发布:html5整站源码带后台 编辑:程序博客网 时间:2024/04/29 21:12
在u盘的热拔插监听部分,部分使用了前辈的代码https://github.com/wang-bin/qdevicewatcher。这一段时间对代码进行了细致的阅读并学习了netlink的部分机制,然后对项目相关部分进行了修改和去除冗余。
netlink用于内核与用户的通信,机制是socket。在u盘热拔插监听实现中,只需要实现用户部分的socket,然后建立与内核部分的绑定。
int s = socket(PF_NETLINK, SOCK_DGRAM, NETLINK_KOBJECT_UEVENT); if (s == -1) { perror("socket"); return -1; } setsockopt(s, SOL_SOCKET, SO_RCVBUF, &buffersize, sizeof(buffersize)); ret = bind(s, (struct sockaddr *)&snl, sizeof(struct sockaddr_nl));
然后通过recv()接受信息,通过对信息进行解析,判断状态。
u盘插入:
u盘拔出:
0 0
- Linux u盘助手(三)
- Linux U盘助手(一)
- Linux U盘助手(二)
- Linux u盘助手(四)
- Linux u盘助手(五)
- Linux u盘助手总结
- Linux u盘助手期中总结
- SolidWorks三维助手(三)
- 分布式助手Zookeeper(三)
- U盘文件系统(三)
- U盘小助手 使用和功能说明
- Linux(CentOS6.3)三种安装方法(U盘,硬盘,光盘)
- Linux(CentOS6.3)三种安装方法(U盘,硬盘,光盘)
- Linux下的USB总线驱动(三) u盘驱动分析
- 使用U盘安装Linux系统图解三
- ROS 总结(三):Moveit!配置助手
- Linux常用命令(三)磁盘U盘挂载
- 《Linux那些事儿之我是USB》我是U盘(17)冬天来了,春天还会远吗?(三)
- Kali Linux 装好系统后安装常用软件
- lucene 分词原理
- fedora20 安装出现dracut:/# 的解决办法
- 循环链表与约瑟夫问题
- 在sublime里安装Emmet插件(代替zen-coding)
- Linux u盘助手(三)
- Servlet简介
- javafx treeview 获取选中的结点
- ZOJ2599:Graduated Lexicographical Ordering(非常经典的数位DP)
- scrollview实现反弹效果与解决与listview的冲突
- axure制作广告轮播效果
- 南阳 100 1的个数
- kari492 欧拉函数
- hibernate---核心开发接口1(重点)