- 博客(8)
- 资源 (5)
- 收藏
- 关注
原创 completion
1 数据结构struct completion { unsigned int done; wait_queue_head_t wait;//等待队列头};2 初始化2.1 动态static inline void init_completion(struct completion *x){ x->done = 0; init_waitqueue_head(&x->wai
2014-01-20 21:03:59 1242
原创 lock的初始化值
spinlock:初始化为0,表示可用。mutex:初始化为1,表示可用。semaphore:初始化为0,表示不可用;初始化为>0,表示可用。rw_semaphore:初始化为0,表示可用。completion :初始化为0,表示不可用。
2014-01-19 17:14:15 992
转载 Android休眠唤醒机制简介(二)
在suspend_freeze_processes()函数中调用了freeze_processes()函数,而freeze_processes()函数中又调用了try_to_freeze_tasks()来完成冻结任务。在冻结过程中,会判断当前进程是否有wake_lock,若有,则冻结失败,函数会放弃冻结。
2014-01-18 13:10:30 9477
转载 Android休眠唤醒驱动流程分析
Android休眠唤醒驱动流程分析(一)****************************************************作者:Sean日期:2012-11-29修改历史:****************************************************标准linux休眠过程: power management not
2014-01-11 14:47:14 7490
转载 Android休眠唤醒机制简介(一)
Android休眠唤醒机制简介(一)*************************************************************************作者:sean日期:2012-11-29修改历史:**************************************************************************
2014-01-11 14:22:13 1951
原创 warning
1 int y1[5] = {0};warning: built-in function ‘y1’declared as non-function [enabled by default]原因:y1"在gcc(mingw)里面是一个内置函数,把"y1"声明成了函数之外的东西。
2014-01-10 19:45:41 2257
原创 trylock的返回值
spinlock:spin_trylock() 成功返回1;否则返回0。spin_trylock()->raw_spin_trylock()->_raw_spin_trylock()->do_raw_spin_trylock()mutex:mutex_trylock() 成功返回1,失败返回0。semaphore:down_trylock() 成功返回0,失败返回1。rw_sema
2014-01-10 19:36:55 3095
原创 rw_semaphore
摘抄一段:读写信号量对访问者进行了细分,或者为读者,或者为写者,读者在保持读写信号量期间只能对该读写信号量保护的共享资源进行读访问,如果一个任务除了需要读,可能还需要写,那么它必须被归类为写者,它在对共享资源访问之前必须先获得写者身份,写者在发现自己不需要写访问的情况下可以降级为读者。读写信号量同时拥有的读者数不受限制,也就说可以有任意多个读者同时拥有一个读写信号量。如果一个读写信号量当前没有
2014-01-06 18:44:45 1815 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人