iperf编译 iperf编译下载后解压iperf-2.0.9-source.tar.gz文件,进入iperf-2.0.9目录,输入命令配置./configure --host=arm-linux-gnueabihf CC=arm-linux-gnueabihf-gcc CFLAGS=-static CXX=arm-linux-gnueabihf-g++ CXXFLAGS=-stat
Shell if 条件判断 https://blog.csdn.net/zhan570556752/article/details/80399154?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522162753812316780357219581%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=162753812316780357219581&a
ProtoBuf? 何为 ProtoBuf我们先来看看官方文档给出的定义和描述:protocol buffers 是一种语言无关、平台无关、可扩展的序列化结构数据的方法,它可用于(数据)通信协议、数据存储等。Protocol Buffers 是一种灵活,高效,自动化机制的结构数据序列化方法-可类比 XML,但是比 XML 更小(3 ~ 10倍)、更快(20 ~ 100倍)、更为简单。你可以定义数据的结构,然后使用特殊生成的源代码轻松的在各种数据流中使用各种语言进行编写和读取结构数据。你甚至可以更新数据结构,而
zmq的三中模式 zqm的三中模式1、请求回复server端 1 import time 2 import zmq 3 import Queue 4 Queue() 5 context=zmq.Context() 6 socket=context.socket(zmq.REP) 7 socket.bind("tcp://*:5555") 8 9 while True:10 message=socket.recv_string()11 socket.send(b"word
protobuf 交叉编译 protobuf-c 的交叉编译1、可以用上一步的protobuf-c-master文件,执行一下make clean; 或者重新解压一下protobuf-c-master安装包3、./autogen.sh4、./configure --host=arm-linux CC=PATH/arm-none-linux-gnueabi-gcc CXX=PATH/arm-none-linux-gnueabi-g++ --disable-protoc --prefix=/usr/local/protobuf-c-
消息队列库——ZeroMQ 消息队列库——ZeroMQhttps://github.com/zeromq/libzmqZeroMQ(简称ZMQ)是一个基于消息队列的多线程网络库,其对套接字类型、连接处理、帧、甚至路由的底层细节进行抽象,提供跨越多种传输协议的套接字。ZMQ是网络通信中新的一层,介于应用层和传输层之间(按照TCP/IP划分),其是一个可伸缩层,可并行运行,分散在分布式系统间。ZMQ不是单独的服务,而是一个嵌入式库,它封装了网络通信、消息队列、线程调度等功能,向上层提供简洁的API,应用程序通过加载库文
c计算百分百比 int a = 2075;int b = 3011;float c = (float) ( a * 100 / b) / 100;int count = c * 100;printf("pecent:%0.2f", c);printf("count:%d", count);
Makefile 编译动态库文件及链接动态库 文件目录结构如下复制代码1 dynamiclibapp.c2 Makefile3 comm/inc/apue.h4 comm/errorhandle.c5 dynamiclib/Makefile6 dynamiclib/dynamiclib_add.c7 dynamiclib/dynamiclib_mul.c8 dynamiclib/inc/dynamiclibs.h9 dynamiclib/libs/复制代码dynamiclib目录dynamiclib/inc/dynamic
Linux定时器的使用 使用定时器的目的无非是为了周期性的执行某一任务,或者是到了一个指定时间去执行某一个任务。要达到这一目的,一般有两个常见的比较有效的方法。一个是用linux内部的三个定时器,另一个是用sleep, usleep函数让进程睡眠一段时间,使用alarm定时发出一个信号,还有那就是用gettimeofday, difftime等自己来计算时间间隔,然后时间到了就执行某一任务,但是这种方法效率低,所以不常用。alarmalarm用在不需要经确定时的时候,返回之前剩余的秒数。NAMEalarm - set an
clock_gettime demo #include <stdio.h>#include <string.h>#include <time.h>#include <sys/time.h>#include <assert.h>#include <unistd.h>static void clock_gettime_test(){struct timespec ts;clock_gettime(CLOCK_REALTIME, &ts);printf
运算符参考图 这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Ma.
time命令 time命令说明:喜欢写小程序的人都特别注重自己程序的执行效率,那么在Linux上,就有一个time的命令,用于测量命令的运行时间,还可以测量内存、I/O等的使用情况。一个程序在运行时使用的系统资源通常包括CPU、内存和I/O等;CPU资源的统计包括实际使用时间(real time)、用户态使用时间(the process spent in user mode)、内核态使用时间(the process spent in kernel mode)。(关于用户态和内核态的理解,文章后面有解释)
Linux 下查看所有用户方法 增加用户adduser删除用户userdel方法 1 :使用 /etc/passwd 文件方法 2 :使用 getent 命令getent passwd说明:列表用冒号分割的 7 个字段:**用户名 (magesh): 已创建用户的用户名,字符长度 1 个到 12 个字符。**密码(x):代表加密密码保存在 `/etc/shadow 文件中。**用户 ID(506):代表用户的 ID 号,每个用户都要有一个唯一的 ID 。UID 号为 0 的是为 ...
Linux动态库环境变量设置 修改环境变量设置,编辑/etc/profilevi /etc/profile在文件里末尾加上对应的环境变量信息。动态库环境变量设置:export LD_LIBRARY_PATH=/home/server/lib/使配置即时生效source /etc/profile