
Linux应用编程
文章平均质量分 64
shun_smile
爱运动,爱爬山,爱旅游,爱打羽毛球,梦想是成为一名高级软件工程师。
展开
-
自己写onvif视频模拟器时写的Makefile
MODENAME = INFRTPServerCC = gccCXX = g++OUTPUT = ./OBJ_MAIN = ../BIN_PATH = $(OBJ_MAIN)bin/LIB_PATH = $(OUTPUT)lib/OBJDIR = $(OBJ_MAIN)obj/PROGRAM = $(BIN_PATH)$(MODENAME)PREFIX = ./...原创 2020-04-23 16:23:22 · 466 阅读 · 0 评论 -
Makefile模板之生成动态库
选项说明:-Wall 选项 :可以打印出编译时所有的错误或者警告信息。变量没有初始化,类型不匹配,没有使用的变量或者类型转换错误等警告提示。-fPIC 选项:适用于动态连接,作用于编译阶段,告诉编译器产生与位置无关代码(Position-Independent Code), 则产生的代码中,没有绝对地址,全部使用相对地址,故而代码可以被加载器加载到内存的任意 位置,都可以正确的执行。这正是共...原创 2020-04-23 16:03:10 · 1985 阅读 · 0 评论 -
linux 下单网卡批量添加多个IP地址脚本
linux所有网卡的配置文件都保存在 /etc/sysconfig/network-scripts 目录中,一个网卡对应一个配置文件。只需复制一份,修改其中的DEVICE和IPADDR字段就可以。配置完成后重启网卡(命令:service network restart)即可。#! /bin/sh#批量添加IP脚本#网络文件 填写网卡路径networkfile="/etc/sysconf...原创 2020-04-15 16:02:15 · 1013 阅读 · 1 评论 -
抓包工具tcpdump的常见用法
常用选项: -s :指定监听的数据包大小。 -c:指定要抓取的包的最终数量。 -i:指定tcpdump要监听的接口。 -n:对地址以数字方式显式,否则显式为主机名,也就是说-n选项不做主机名解析。 -nn:除了-n之外,还把端口显示为数值。 -w:指定监听数据包写入文件。常用输出项: -XX:以16进制和ASCII方式输出包的头部数据。 -vvv:很详细的输出(想要详细的信息加...原创 2018-05-09 23:21:50 · 1629 阅读 · 1 评论 -
内存映射实现文件拷贝
文件描述符文件描述符用来识别一个打开的文件,文件的修改读写关闭等等都以文件描述符为依据。它是一个非负整数。在用open函数打开文件后,返回一个文件描述符。 open如果失败,则返回-1。因此通常用fd==-1来判断是否打开失败。保留的文件描述符一般会保留3个文件描述符,0—标准输入端,1—标准输出端,2—标准错误端。 如果关闭这其中的一个,则新打开的文件的描述符就是被关...原创 2018-05-07 22:51:45 · 1454 阅读 · 0 评论 -
线程池的实现(Linux系统)
一、线程池 一开始就创建多个线程,让它们一直存活。一旦有任务就直接交给线程去执行。线程执行完任务后回到线程池也不销毁。二、实现借助第三者来传递任务。发布任务的人不要知道由谁来执行。执行任务的人不要知道谁发布的,第三者就是一个队列。发布任务的人将任务插到队列(进入队列尾部),线程从队列中取出第一个节点,然后执行任务。任务用函数和参数描述,使用函数指针和一个参数来保存。#includ...原创 2018-05-07 23:14:14 · 235 阅读 · 0 评论 -
守护进程(Daemon)的创建
(1)调用fork让程序转入后台运行。(2)脱离终端。 用setsid设置会话组长。(3)再次fork以避免无意中获得新的控制终端(4)改变工作目录和文件创建模式掩码 chdir(“/”) 和 umask(0)(5)关闭所有非必要的文件描述符。将0,1,2描述符转到null文件中。for(i=0;i<1024;i++){ close(i);}open(...原创 2018-05-30 16:40:55 · 234 阅读 · 0 评论 -
Linux和Windows遍历磁盘所有文件
#ifdef WIN32#include <io.h>//获取特定格式的文件名void GetPlaybackFile::getAllFiles(std::string path, std::multimap<std::string, std::string>& mapfiles, std::string format){ long hFile =...原创 2019-07-25 16:44:11 · 516 阅读 · 0 评论