互斥量
数组结构:structmutex.
静态定义:
DEFINE_MUTEX(name);
动态初始化:
mutex_init(&mutex);
操作:
mutex_lock(&mutex);
/*critical region ... */
mutex_unlock(&mutex);
mutex_trylock(structmutex *)
mutex_is_locked(struct mutex *)
互斥量有如下一些特性:
1.每次只能有一个任务可以获得互斥量。
2.谁获得,谁释放,不能在一个上下文中获得锁,在另一个上下文中释放锁。
3.不支持嵌套。
4.进程在获得互斥量时不能退出。
5.中断上下文中不能使用。
6.只能使用以上的一些API操作互斥量。