linux驱动学习的基础
武剑雨
这个作者很懒,什么都没留下…
展开
-
ps/kill终止led进程
ps ps可用于查询当前进程和进程号,方便kil kill命令简介 一 kill -l [信号] -l 显示信号名称列表,这也能在/usr/include/linux/signal.h文件中找到。 [root@localhost ~]# kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT原创 2013-05-14 18:47:31 · 589 阅读 · 0 评论 -
kamlloc与vamlloc
kmalloc/kfree,vmalloc/vfree函数用法和区别 1.kmalloc kmalloc内存分配和malloc相似,除非被阻塞否则他执行的速度非常快,而且不对获得空间清零. 说明:在用kmalloc申请函数后,要清零用memset()函数对申请的内存进行清零。 2.kamlloc函数原型: #include Void *kmalloc(size_t size,转载 2013-05-14 18:57:28 · 874 阅读 · 0 评论 -
rmmod chdir no such file or directory
使用 rmmod时候发现如下错误 rmmod chdir no such file or directory 我搜索了很多,我安装了busybox,重新配置编译了内核,可还是没解决,也看了别人的一些,可是看不懂,最后找到了下列方法 二. 解决方法 建立rmmod.c ,内容如下 #include #include #include #include #incl转载 2013-05-14 18:54:54 · 768 阅读 · 0 评论 -
mem_malloc:Unknown symbol kmalloc_caches
Linux内存分配处理驱动尚未解决原创 2013-05-14 19:05:04 · 1536 阅读 · 0 评论 -
Makefile:3:***遗漏分隔符。停止
我编写makefile的时候出现了这个问题 上网查了查,都说是 gcc ,g++ ,rm,cp前面是tab,不是空格 我改了两边,都是用tab,但是编译时还是提示出现了错误 Makefile:3:***遗漏分隔符。停止 我才意识到在getit的 编译->首选项:"编辑器"选项页下,有一个"制位表",有一个复选框:插入空格代替制表符(s) 若选中的话,编辑器将会以空格代替“制位表”转载 2013-05-14 19:12:38 · 1377 阅读 · 0 评论 -
Linux中断处理体系结构
参考:http://blog.chinaunix.net/uid-26606708-id-3342309.html 一 memcpy((void *)vectors, __vectors_start, __vectors_end - __vectors_start); memcpy((void *)vectors + 0x200, __stubs_start, __stub转载 2013-05-14 19:18:04 · 498 阅读 · 0 评论 -
poll机制的总结分析
在指定时间到达后,并没有程序去唤醒它,那么它将进入休眠,并挂起。 总结一 现在来总结一下poll机制: 1. poll > sys_poll > do_sys_poll > poll_initwait,poll_initwait函数注册一下回调函数__pollwait,它就是我们的驱动程序执行poll_wait时,真正被调用的函数。 2. 接下来执行file->f_op->poll,原创 2013-05-14 19:21:32 · 597 阅读 · 0 评论 -
信号量/互斥的理解
信号量实现的机制 信号量是一种睡眠锁。它是实现同步操作,防止竟态的方式之一。任何进程在对共享数据进行读写操作之前必须获得用来保护共享数据的信号量,否则不能供访问权限,信号量会把这个访问进程放进一个等待队列中(这个等待队列是在信号量初始化过程中被初始化的),然后让其进入睡眠状态。这是处理器重新调度,去执行其他进程的操作。保护共享数据的信号量被释放,被这个信号量放进等待队列的进程会被激活,获得该信号转载 2013-05-14 19:26:36 · 513 阅读 · 0 评论