linux基础
一事无成却自命不凡
这个作者很懒,什么都没留下…
展开
-
c++11 thread类在嵌入式上运行报错问题
从昨晚到今天遇到一个怪异的问题,暂时无解,先记录在此处。测试代码:#include <iostream>#include <unistd.h>#include <thread>using namespace std;void func1(){ cout<<"AAAAAAAAAA"<<endl;}int main(){ thread(func1).detach(); sleep(2); cout原创 2022-04-14 14:07:19 · 1178 阅读 · 1 评论 -
linux指定目录下按文件创建时间清理旧文件的实现
一. 问题描述linux的一个目录下存放着日志文件,每个日志文件都是打包压缩好的。每次生成新的日志文件后,都要检查一下是否超过10个,如果超过10个则删掉最旧的日志文件。依此滚动循环。二. 代码实现假设存放日志的目录是:/home/log,且该目录下只存放日志文件,无其他文件假设日志文件名格式为log_xxx_xxx.zipbash版#获取日志文件数量num=`ls /home/log -l |grep "^-"|wc -l`;#需要保留的日志数量上限retaincount = 1原创 2022-03-29 18:23:28 · 2378 阅读 · 0 评论 -
linux使用mmap共享内存封装动态库,实现全局变量对外只读接口
想要实现的功能:动态库中定义结构体类型全局变量(一个结构体中嵌套多个结构体),该变量在库内可读写,但主程序(外部程序)只可读,不可写。方便说明,简化成一个如下的结构体变量:typedef struct{ int a; int b; int c;} Test_STU;思路:结构体改成类,public成员,通过get()方法获取——不喜欢,直接采用 . 结构体方式访问最好;结构体改成类,public成员,添加const修饰——不喜欢,变量很多,初始化列表不方便,且类内以原创 2021-04-27 11:25:52 · 699 阅读 · 0 评论 -
linux下socketCAN实现反转过滤——CAN_INV_FILTER的使用
关于Linux中socket can怎么使用,CSDN上已经有很多文章介绍。本文重点记录can_filter中的 CAN_INV_FILTER的使用,很多文章对此一笔带过,且很多文章翻译不全,或者原文不全,导致自己浪费了些时间,最后在看candump源码时才发现问题所在。直接贴代码解释,以下为写的一个最简单的canId过滤函数:宏定义/** CAN报文过滤方式 **/#define CAN_FILTER_PASS 0x01 //过滤方式-通过#define CAN_FILTER_RE原创 2021-04-10 15:20:26 · 2476 阅读 · 4 评论