![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
嵌入式
文章平均质量分 80
zcf418387170
爱好足球,羽毛球
展开
-
信号量sem_t,互斥锁pthread_mutex_t的使用
信号量的数据类型为结构sem_t,它本质上是一个长整型的数。 ------函数sem_init()用来初始化一个信号量。 它的原型为: extern int sem_init __P ((sem_t *__sem, int __pshared, unsigned int __value)); sem为指向信号量结构的一个指针;pshared不为0时此信号量在进程间共享,否则只能转载 2012-04-14 18:15:32 · 517 阅读 · 0 评论 -
可变参数宏__VA_ARGS__
可变参数宏__VA_ARGS__ 在 GNU C 中,宏可以接受可变数目的参数,就象函数一样,例如: #define pr_debug(fmt,arg...) \ printk(KERN_DEBUG fmt,##arg) 用可变参数宏(variadic macros)传递可变参数表 你可能很熟悉在函数中使用可变参转载 2012-04-14 09:56:07 · 666 阅读 · 0 评论 -
va_list详解,详解请看http://www.cnblogs.com/diyunpeng/archive/2010/01/09/1643201.html
va_list 当你的函数的参数个数不确定时,就可以使用上述宏进行动态处理,这无疑为你的程序增加了灵活性。 Example: ◎用法1: func( Type para1, Type para2, Type para3, ... ) { /****** Step 1 ******/ va_list ap; va_start转载 2012-04-13 22:10:46 · 810 阅读 · 1 评论 -
驱动模块中Makefile的自我理解
转载于:http://www.hovercool.com/en/%E9%A9%B1%E5%8A%A8%E6%A8%A1%E5%9D%97%E4%B8%ADMakefile%E7%9A%84%E8%87%AA%E6%88%91%E7%90%86%E8%A7%A3 对于一个简单的驱动模块,以下为Makefile的经典构成: //------------Makefile--------------转载 2012-04-17 10:27:30 · 837 阅读 · 0 评论 -
内核模块加载命令
转载于:http://www.sudu.cn/info/html/edu/20070101/292793.html 1、lsmod 列加以挂载的内核模块; lsmod 是列出目前系统中已加载的模块的名称及大小等;另外我们还可以查看 /proc/modules ,我们一样可以知道系统已经加载的模块; 代码:[root@localhost beinan]# lsmod 2、modinfo 查看转载 2012-04-15 21:43:39 · 892 阅读 · 0 评论 -
GDB调试
一个调试示例 源程序:tst.c 代码: 1 #include 2 3 int func(int n) 4 { 5 int sum=0,i; 6 for(i=0; i 7 { 8 sum+=i; 9 } 10 return sum; 11 } 12 13 14 main() 15 { 16 int i; 17 long result = 0; 18转载 2012-04-18 11:14:57 · 381 阅读 · 0 评论 -
Linux 信号量sem_wait(3) (翻译 man 3)
SEM_WAIT(3) Linux Programmer's Manual SEM_WAIT(3) NAME sem_wait, sem_timedwait, sem_trywait - lock a semaphore //锁定一个信号量 SYNOPSIS #include int sem_wait(sem_t *sem); int sem_trywait(sem_t *sem)转载 2012-04-21 10:38:23 · 2040 阅读 · 0 评论