Linux驱动编程
文章平均质量分 76
beyond702
这个作者很懒,什么都没留下…
展开
-
Linux信号量的实现(笔记)
Linux内核编程中要使用信号量,代码必须包括头文件,信号量的结构体是struct semaphore,可以通过集中途径来声明和初始化。一是直接创建信号量,通过void sema_init(struct semaphore *sem, int val);来完成,其中val是赋予信号量的初值。更简单的是内核提供了一组辅助函数和宏:DECLARE_MUTEX(name);//信号量name的值被初始化为1DECLARE_MUTEX_LOCKED(name);//name的值被初始化为0如果互斥体必须在运行时被初原创 2010-12-21 10:45:00 · 1873 阅读 · 1 评论 -
Linux内核驱动编程中的一些API(进程并发相关)
最近刚刚开始看linux内核驱动编程相关的东西,以下是在此过程中比较重要的一些api以及对其的理解,做个笔记,留作以后的参考^-^struct semaphore{spinlock_t lock;usigned int count;struct list_head;}这个数据结构是用于并发控制的信号量。lock为自旋锁,count为信号量计数, list_head是一个双向链表结构的等待队列。init_MUTEX(semaphore)初始化信号量。jiffies是linux内核中的全局变量,用来记录自系统启原创 2010-11-25 16:58:00 · 958 阅读 · 0 评论