一般拿到一个 Linux SDK 的时候,方案商已经内置了很实用的 busybox,用来执行 poweroff / reboot 命令。但嵌入式开发时,有时需要自定义执行 reboot / poweroff 之后的一些行为。本文就是负责简单易懂地解释如何...
请注意这是 libev 而不是 libevent 的文章! 这篇文章是第二篇,主要讲 libev 里的 watcher 的一些基础操作。 本文地址:[链接] Watcher 解析 以下是一段示意性的代码,使用的是ev_io: {代码...} 每一个 watcher...
自从接触到 libev 之后,就深深赞同作者精简的设计理念,于是就爱上了 libev 这样简单的I/O库。此外,libev 的大小也比 libevent 小得多并且自由得多。虽然我在公司的项目用的异步 I/O 库还是以 libevent 和 libu...
Shell 其实并不常写,每次写的时候就总得查一下比较语句的语法该怎么写。本文章就作为笔记记录这些资料吧。本文地址:[链接] Reference Shell数值、字符串比较shell判断和比较《 Linux程序设计(第4版)》 if-els...
本文列明Linux的常用命令用法,学会了这些命令之后,结合shell编程知识,就可以做各种自动编译/集成的工作啦。本文地址:[链接] Reference 《Linux Shell 脚本攻略》Linux中怎么找出空文件夹? cat:显示、拼接 {...
这只是一个简单的笔记,说明一下在使用Google搜索时的一些技巧。Google在手,天下我有! 本文地址:[链接] Reference google搜索技巧新技巧。。。刚刚发现!![转载]如何使用GOOGLE高级搜索技巧 以词组为单位搜索...
参考了一篇markdown的语法笔记,按照自己的习惯记录一下 markdown 的语法,也方便复制粘贴。 感觉 SegmentFault 和 markdown 还是非常相似的 本文地址:[链接] Reference Markdown 11种基本语法CSDN Markdown简明...
在我之前的一篇文章中提到了在C程序中如何自由的将当前或者指定的时间按照格式自由输出。如果我们要在shell中做差不多的事情呢?这篇文章就是说这个的。
OpenSSL一直以来各种被诟病,具体挑了哪些刺,本文就不深究。作为OpenSSL有很多替代,我了解到的有cyaSSL(WolfSSL)和PolorSSL。其中PolarSSL已经被ARM收购了,改名为mbedTLS。本文列举了作为一个SSL client端,...
一直以来都是普通的socket read/write,现在终于有基于SSL通道的项目了。所以简单记录了一下OpenSSL的调用流程,便于快速入门。本文地址:[链接]
在Linux编程中,我们经常使用 Fork()。然而不少情况下,fork是有危险的。但是又不能简单使用vfork替换就成了。这个笔记说明了两者使用的一些注意点。本文地址:[链接]
现在越来越多的Linux编译环境改用Ubuntu。说实话我也不太了解为啥,但是供应商推荐了,我也当然要随大流。Ubuntu的root就和RedHat系列不同了,要登录root账户,现在麻烦很多。这也好,强制用户养成不要以root登录...
做开发的时候,经常为了某系列的项目,专门就搞一个虚拟机,安装RHEL、Fedora、CentOS之类的进行开发。因为是虚拟机,也经常使用root账户就直接上了。
--prefix=PREFIX把所有文件安装在PREFIX中而不是默认的路径(如 /usr/local/xxx 中)。默认是"/"或者是"/usr/local"等等。。以下还有部分参数细化 PREFIX 的其它目录
本文地址:[链接] Evbuffers: 缓冲化的I/O实用工具 头文件:<event2/buffer.h> Evbuffer基本操作 {代码...} 创建/销毁evbuffer {代码...} 第一个函数,参数locking传入的参数是一个锁。可以传入NULL,...
需要做一个小功能,就是把一个文本文件中的所有换行符都去掉。一般肯定是想到使用sed来修改啦。但是我搜了一下,并没有找到sed要怎么输入\n——我知道^M对应的是\r,但是\n却失败了,在命令行中直接被切割掉。 ...
evutil_socket_tSocket的抽象。除了Windows之外,其他系统都是一个int类型。如果考虑Windows的兼容性的话,建议用这个类型。
初入libevent的人,很可能是第一次接触异步编程。Libevent的编程思想,建议还是多看前人的程序,或者是看libevent本身的文档学习。或者是介绍另外一个库,那就是libuv,它是libev某种意义上的的替代品(而libev又...
Timer是Linux内核的一种软中断,被调用函数是异步执行的。由于是软中断,所以函数被执行的时候是处于非进程的上下文中,所以有以下规则需要遵守:
首先,spinlock是一把锁,它的功能与其他锁的作用类似,都是对用于临界区进行原子读写。使用这把锁时,原理上就是不停的循环检查锁的状态,直到可用的时候进入临界区。
电子和互联网深耕多年,拥有丰富的嵌入式和服务...