判断指定进程是否存在

判断指定进程是否存在//存在返回1intprocess_exist(char*pid){intret=0;charpid_path[64]={0};structstatstat_buf;if(!pid)return0;snprintf(pid_path,64,"/proc/%s/statu
c/c++ linux 2020年08月19日 73次浏览

初始化消息队列

初始化消息队列staticintinit_msq_master(char*ipcpath,intclean){structmsg_bufmsg;intmsqid=-1,ipckey=-1;intret=-1;intmsglen=4096;/*为建立IPC通讯准备key值。注意:1、使用ftok时,文
c/c++ linux 2020年08月19日 79次浏览

创建共享内存

创建共享内存//创建共享内存intinit_shmget_master(char*ipcpath,unsignedintshm_size){intret=-1,ipckey=-1;structshmid_dsshm_stat;void*shm=NULL;/*为建立IPC通讯准备key值。注意:1、使
c/c++ linux 2020年08月19日 70次浏览

获取指定pid使用内存情况

获取指定pid使用内存情况intget_task_mem(intpid){longmem=0;FILE*p_file=NULL;charcmd[512]={0},fpath[128]={0},buf[128];if(pid==0)return0;sprintf(fpath,"/proc/%
c/c++ linux 2020年08月19日 68次浏览

linux中statm文件内容含义

statm文件内容含义cat/proc/1/statm487185133310670很简单地返回7组数字,每一个的单位都是一页(常见的是4KB)分别是:size:任务虚拟地址空间大小Resident:正在使用的物理内存大小Shared:共享页数Trs:程序所拥有的可执行虚拟内存大小Lrs:被映像倒任
linux 2020年08月18日 92次浏览

封装一个自己的打印函数

封装一个自己的打印函数#include<stdio.h>#include<stdarg.h>#defineDEBUG_BUF_MAX4096voiddebug_info(char*file,constchar*func,unsignedintline,constchar*fm
c/c++ 2020年08月18日 70次浏览

获取结构体中变量的偏移位置

获取结构体变量偏移位置#defineget_variable_index(TYPE,member,ITYPE,index)\{\*index=(ITYPE)(&(((TYPE*)0)->member));\}while(0)TYPE为结构体类型。member为结构体中要获取位置的变量名
c/c++ 2020年08月18日 61次浏览

Makefile从入门到入土

Makefile里有什么?Makefile里主要包含了五个东西:显式规则、隐晦规则、变量定义、文件指示和注释。显式规则。显式规则说明了,如何生成一个或多的的目标文件。这是由Makefile的书写者明显指出,要生成的文件,文件的依赖文件,生成的命令。隐晦规则。由于我们的make有自动推导的功能,所以隐
工具 2020年08月17日 67次浏览

正则表达式语法

正则表达式语法字符说明\将下一字符标记为特殊字符、文本、反向引用或八进制转义符。例如,"n"匹配字符"n"。"\n"匹配换行符。序列"\\"匹配"","\("匹配"(&q
工具 2020年08月14日 72次浏览

shell脚本 从入门到放弃

Shell解析器输入cat/etc/shells查看解析器root@mouse:~#cat/etc/shells#/etc/shells:validloginshells/bin/sh/bin/dash/bin/bash/bin/rbash脚本头以#!/bin/bash开头(指定解析器)例如:#!/
shell 2020年08月12日 92次浏览