
Linux
Zac_xu
这个作者很懒,什么都没留下…
展开
-
原子操作
atomic_read(atomic_t * v); 对原子类型的变量进行原子读操作,它返回原子类型的变量v的值 atomic_set(atomic_t * v, int i); 设置原子类型的变量v的值为i atomic_add(int i, atomic_t *v) 原子类型的变量v增加值i atomic_sub(int i, atomic_t *v); 从原子类型的变量v中...转载 2018-04-20 17:33:16 · 429 阅读 · 0 评论 -
linux延时工作任务create_singlethread_workqueue函数的使用
什么是workqueue Linux中的Workqueue机制就是为了简化内核线程的创建。通过调用workqueue的接口就能创建内核线程。并且可以根据当前系统CPU的个数创建线程的数量,使得线程处理的事务能够并行化。workqueue是内核中实现简单而有效的机制,他显然简化了内核daemon的创建,方便了用户的编程. 工作队列(workqueue)是另外一种将工作推后执行的形式.工作队列...转载 2018-04-20 17:43:10 · 6344 阅读 · 0 评论 -
schedule_delayed_work()用法
工作队列 在Linux内核中,对下半部(或者说推后执行的工作)的处理方式有好几种,包括BH(bottom half),软中断,Tasklets和工作队列等等。在2.6内核中,大名鼎鼎的BH处理被废除,新增了更方便的工作队列。工作队列的方便之处在于它把 工作推后,交由一个内核线程去执行,这个内核线程总会在进程上下文执行,因此,它就可以很方便的持有信号量(semaphore)转载 2018-04-20 18:00:12 · 4744 阅读 · 0 评论 -
线程工作队列实例
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #i原创 2018-04-21 14:25:29 · 252 阅读 · 0 评论 -
【Driver】----woke_lock
wakelock是一种锁的机制, 只要有task拿着这个锁, 系统就无法进入休眠, 可以被用户态进程和内核线程获得。这个锁可以是有超时的或者是没有超时的, 超时的锁会在时间过去以后自动解锁。如果没有锁了或者超时了, 内核就会启动标准linux的那套休眠机制机制来进入休眠。 wakelock在android的休眠唤醒机制中扮演着及其重要的角色,主要源码位于文件:kernel/kernel/powe...原创 2018-04-20 11:14:21 · 325 阅读 · 0 评论 -
Ubuntu 更新/安装nodejs
3m安装法 在各个平台都有相关的包管理工具,比如ubuntu下面有apt-get,centos下面有yum,mac下面有brew等,它们都是安装软件的非常方便的利器。但对于Node.js这个版本帝而言,它们是不合适的,首先Node.js的版本更新非常快,开发机器上可能要同时存在几个Node.js的大版本,而npm又有2.x和3.x版本的差异,国内网访问npmjs.org的镜像非常慢,综上种种问题...转载 2018-08-16 09:28:12 · 231 阅读 · 0 评论 -
NVM----安装GIT commitzion出错解决
1.安装nvm 2.通过NVM安装node.js 3.node.js版本切换到,v4.9.1 版本太高运行git cz会报错。 切换方法: nvm alias default version_name 例如: nvm alias default v9.3.0原创 2018-08-20 15:48:46 · 300 阅读 · 0 评论