2018年3月12日

8、linux下输入子系统

摘要: input_sync(button_dev); /*通知接收者,一个报告发送完毕*/ 参考:http://www.51hei.com/bbs/dpj-27652-1.html 很详细说明 input.c是输入子系统驱动程序顶层框架文件,是一个通用的文件 在connect函数中 for (minor 阅读全文

posted @ 2018-03-12 23:03 拉风摊主 阅读(195) 评论(0) 推荐(0) 编辑

2018年3月11日

7、linux系统2440开发板域名解析问题

摘要: 如果在linux系统中ping某一台电脑的ip地址可以ping 通: ~ >: ping 192.168.1.3PING 192.168.1.3 (192.168.1.3): 56 data bytes64 bytes from 192.168.1.3: seq=0 ttl=64 time=2.51 阅读全文

posted @ 2018-03-11 22:20 拉风摊主 阅读(230) 评论(0) 推荐(0) 编辑

7、linux之定时器

摘要: (1) 一个timer_list 结构体的实例对应一个定时器,其定义如下: struct timer_list { struct list_head entry, /*定时器列表*/ unsigned long expires, /*定时器到期时间*/ void (*function) (unsig 阅读全文

posted @ 2018-03-11 22:18 拉风摊主 阅读(145) 评论(0) 推荐(0) 编辑

6、linux中同步、互斥、阻塞(原子操作、信号量、阻塞)

摘要: 1. 原子操作原子操作指的是在执行过程中不会被别的代码路径所中断的操作。常用原子操作函数举例:atomic_t v = ATOMIC_INIT(0); //定义原子变量v并初始化为0atomic_read(atomic_t *v); //返回原子变量的值void atomic_inc(atomic_ 阅读全文

posted @ 2018-03-11 18:53 拉风摊主 阅读(172) 评论(0) 推荐(0) 编辑

5、异步通知机制

摘要: 异步通知,的确是一种很好处理机制,熟练掌握这种手段,对我们写高质量的应用程序很有帮助。下面说说对它的理解: 异步通知,就是让驱动去告诉应用,底层硬件发生了什么事,而不是应用主动地去查询驱动,这对系统的性能有一个很大的提升。 首先,在驱动中 内核首先定义一个结构体struct fasync_struc 阅读全文

posted @ 2018-03-11 16:51 拉风摊主 阅读(310) 评论(0) 推荐(0) 编辑

1、第一课 register_chrdev和register_chrdev_region 创建知识

摘要: 1. register_chrdev注册字符设备后,有0-256个子设备可用,若major==0,则内核动态申请主设备号。static inline int register_chrdev(unsigned int major, const char *name, const struct file 阅读全文

posted @ 2018-03-11 16:48 拉风摊主 阅读(302) 评论(0) 推荐(1) 编辑

4、linux开发中常用指令

摘要: 1、cat /proc/device 可以查看各个全部字符设备和块设备,在register_chrdev中设置的名字在打印出来的信息中可以看到;2、top 可以看各个应用程序占用CPU量及PID等信息3、kill PID 杀死进程4、./应用程序名字 & 后台运行 5、cat /proc/inter 阅读全文

posted @ 2018-03-11 15:48 拉风摊主 阅读(142) 评论(0) 推荐(0) 编辑

3、Pycharm使用

摘要: 1、设置文件模板 file->settings->Editor->File and Code Templates->Python Script 2、运行 a.点击要运行的文件,右键 run b.view->toolbar 选中要执行的文件 点击-运行 c、在当前文件空白处,右键,run 3、修改当前 阅读全文

posted @ 2018-03-11 15:44 拉风摊主 阅读(155) 评论(0) 推荐(0) 编辑

3、应用层常用lib函数使用说明

摘要: 1、mmap函数 void* mmap(void* start,size_t length,int prot,int flags,int fd,off_t offset); start:映射区的开始地址,设置为0时表示由系统决定映射区的起始地址。 length:映射区的长度。//长度单位是 以字节为 阅读全文

posted @ 2018-03-11 15:43 拉风摊主 阅读(228) 评论(0) 推荐(0) 编辑

2、应用程序及驱动-poll和select使用说明

摘要: 1、poll机制(如果中断机制出问题了,poll机制是对中断机制的补充,比如等一个小孩,如果小孩生病了,因此隔一段时间应该去找他) poll机制就是给定一段时间,在这一段时间内程序处于睡眠状态一直等待某一个资源,它会在两种情况下返回①时间到了②等到了资源。驱动程序的实现并不复杂,但原理有待分析。首先 阅读全文

posted @ 2018-03-11 15:42 拉风摊主 阅读(304) 评论(0) 推荐(0) 编辑

导航