Chinaunix首页 | 论坛 | 博客
  • 博客访问: 179816
  • 博文数量: 32
  • 博客积分: 499
  • 博客等级: 下士
  • 技术积分: 347
  • 用 户 组: 普通用户
  • 注册时间: 2010-12-22 14:47
文章存档

2012年(10)

2011年(19)

2010年(3)

分类: LINUX

2011-02-19 23:49:03

        最开始看到lddr351页的时候,觉得没有什么好看的,后来发现,如果你把这里的搞清楚了,可以写出节省麻烦事情的代码。
      如果你玩dota,你会晓得个shift的技巧用法就是添加后面的游戏动作任务,即使你不管他,设置好了之后,它会一步一步去执行,很是听话。对于驱动,如果只是做个小动作,就把所有的准备工作做好并安装好驱动那多好,51页的就可以办到。

      最开始,我做好驱动后,是这样的,安装驱动,用cat /proc/devices查看主设备号,然后到/dev下在建立个相应设备,如果这个准备工作没有做好,在测试程序的时候,open什么文件呢,因为你没有建立。但是这个准备工作是很麻烦的,

下面我们把这些所有要做的工作简化在scull_load中,卸载的工作简化在scull_unload中。下面写出具体的scull_load中的代码
  1. #!/bin/sh
  2. module="scull_debug"
  3. device="scull"

  4. /sbin/insmod ./$module.ko $* || exit 1

  5. major=$(awk "\$2==\"$module\" {print \$1}" /proc/devices)

  6. rm -f /dev/${device}[0-3]
  7. mknod /dev/${device}0 c $major 0
  8. mknod /dev/${device}1 c $major 1
  9. mknod /dev/${device}2 c $major 2
  10. mknod /dev/${device}3 c $major 3
你需要做得就是
1.  执行scull_load。
2. 执行测试程序。
3. 测试完成后执行scull_unload即可。
下面添加代码。有些地方可能跟具体的环境有关,不能执行的稍微修改下即可。

 scull_debug.rar   
阅读(2231) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~