select一直返回0的问题解决和总结 发表于 2019-04-13 select是Linux/Unix环境下的高级网络I/O编程接口,它使我们能够进行基于I/O多路转接。I/0多路转接(multiplexing)的核心思想是:先构造一张有关描述符的列表,然后调用一个函数,直到这些描述符中的一个已经准备好进行I/O时,该函数才返回。在返回时,它告诉进程哪些描述符已准备 ... 阅读全文 »
串口清空输入输出缓存 发表于 2019-04-13 Linux串口编程——清空输入输出缓存背景在我们的工作中,串口是一种比较常用的数据传输方式。在某些应用场景下,当程序启动并打开串口后,我们不希望读出串口打开之前的输入缓存数据(即内核驱动已接收但是并未被应用层读出的数据),因此需要对输入缓存数据进行清空(刷清、丢弃)操作。下面以Linux系统上串口编 ... 阅读全文 »
linux编程之select 发表于 2019-04-13 Linux编程之selectselect系统调用的的用途是:在一段指定的时间内,监听用户感兴趣的文件描述符上可读、可写和异常等事件。 select 机制的优势为什么会出现select模型? 先看一下下面的这句代码: 1int iResult = recv(s, buffer,1024); 这是用来接 ... 阅读全文 »
select-poll-epoll的简介和区别 发表于 2019-04-13 select、poll、epoll简介epoll跟select都能提供多路I/O复用的解决方案。在现在的Linux内核里有都能够支持,其中epoll是Linux所特有,而select则应该是POSIX所规定,一般操作系统均有实现 select:select本质上是通过设置或者检查存放fd标志位的数据 ... 阅读全文 »
Struct tm 发表于 2019-04-13 时间操作(struct tm、time_t)求指定日期 前n天的日期1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859#ifndef ... 阅读全文 »
谷歌浏览器安装插件 发表于 2019-04-13 忘记了是由于什么安全的原因,现在chrome无法直接安装插件了 首先下载浏览器插件crx文件,鼠标右键修改文件名后缀由crx改为rar 解压成文件夹,打开浏览器,依次点击浏览器的右上角,更多工具,扩展程序,打开右上角的开发者模式开关。 点击加载已解压的扩展程序,选择之前解压的扩展程序目录,点击确 ... 阅读全文 »
makefile '@' '$' '1828' '-' '-n ' ' $^'使用小结 发表于 2019-04-13 编译代码时,会进程接触makefile,会涉及到一些符号,由于不明白有些意思经常出现问题,在此归纳一下。 ‘@’ 符号的使用 通常makefile会将其执行的命令行在执行前输出到屏幕上。如果将‘@’添加到命令行前,这个命令将不被make回显出来。 例如:@echo –compiling m ... 阅读全文 »
Hexo不显示图片,不需要插件,超简单 发表于 2019-02-20 当使用Hexo创建文件搭建博客的时候,就会遇到图片插图,以及插入的图片无法显示的问题,差不多网上大多数的解决方案就是第一种(但我本人没使用这个方案) 第一种1.找到Hexo下的_config.yml里的post_asset_folder,把这个选项从false改成true 2.在Hexo目录下打开G ... 阅读全文 »
vim快速查找 发表于 2019-02-20 vim有强大的字符串查找功能。 我们通常在vim下要查找字符串的时候, 都是输入 / 或者 ? 加 需要查找的字符串来进行搜索,比如想搜索 super 这个单词, 可以输入 /super 或者 ?super, 两者的区别是前者是从上往下搜索,后者是从下往上搜索。 那么如果我想搜 ... 阅读全文 »
container_of图文分析 发表于 2019-02-20 container of()函数分析简介Container_of在Linux内核中是一个常用的宏,用于从包含在某个结构中的指针获得结构本身的指针,通俗地讲就是通过结构体变量中某个成员的首地址进而获得整个结构体变量的首地址。 Container_of的定义如下: 123#define containe ... 阅读全文 »