自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 资源 (1)
  • 收藏
  • 关注

原创 warning: function declaration isn’t a prototype

编译suricata的时候出现了下面这个warning: 解决方式: 即使函数括号内没有任何参数,也要加一个void类型,来避免这种warning 所以在void MpmCudaEnvironmentSetup()中的参数添加一个void变成 void MpmCudaEnvironmentSetup(void)...

2018-05-18 10:04:13 485

转载 字符编码

ASCII、Unicode、UTF-8计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),如果要表示更大的整数,就必须用更多的字节。比如两个字节可以表示的最大整数是65535,4个字节可以表示的最大整数是4294967295。...

2018-03-27 15:17:53 190

原创 指针数组和数组指针

指针数组:array of pointers,即用于存储指针的数组,也就是数组元素都是指针 数组指针:a pointer to an array,即指向数组的指针 举例说明:int* a[4] //指针数组 表示:数组a中的元素都为int型指针 元素表示:*a[i] 和*(a[i])是一样的,因为[]优先级高于*int (*a...

2018-03-26 16:50:58 176

原创 sizeof总结

1、基本数据类型cout << sizeof(char); // 结果是1cout << sizeof(int); // 结果是4cout << sizeof(unsigned int); // 结果是4 cout << sizeof(long int); // 结果是4cou...

2018-03-26 16:45:55 248

原创 static用法总结

1、 static局部变量函数第一次赋值之后,会一直保存这个值,并且只初始化一次void func(){ static int i = 0; i++;}2、 static全局变量 未经初始化的全局静态变量将被自动初始化为0,限定作用域为文件内从定义之处开始到文件结尾(非静态全局变量在整个源程序内有效)static int i; //默认初始化为0...

2018-03-26 15:15:40 280

转载 ubuntu终端常用快捷键

快捷键 功能 Tab 自动补全 Ctrl+a 光标移动到开始位置 Ctrl+e 光标移动到最末尾 Ctrl+k 删除此处至末尾的所有内容 Ctrl+u 删除此处至开始的所有内容 Ctrl+d 删除当前字符 Ctrl+h 删除当前字符前一个字符 Ctrl+w 删除此处到左边的单词 Ctrl+y 粘贴由Ctrl+u, Ctrl+d, Ctrl+w删除的单词 Ctrl

2018-01-18 10:14:29 156

原创 内存的分段和分页

分段定义:把一段与程序所需要的内存空间大小的虚拟空间映射到某个地址空间如上图所示:A程序需要10M的内存,假设一个地址从0x00000000到0x00A00000的10MB大小的虚拟空间,然后从实际物理内存中分配一个相同大小的物理地址,假设为0x00100000开始到0x00B00000结束的一块空间,然后我们把两块相同大小的地址空间一一映射,即虚拟空间中的每个字节对应于物

2018-01-12 16:03:22 555

原创 TCP/IP协议概述

网络协议通常分不同层次进行开发,每一层分别负责不同的通信功能。一个协议族,比如TCP/IP,是一组不同层次上的多个协议的组合。TCP/IP协议族的四个层次:应用层、传输层、网络层、链路层在TCP/IP协议族中,网络层IP提供一种不可靠的服务,它只是尽可能快地把分组从源结点送到目的结点,即点到点TCP在不可靠的IP层之上提供了一个可靠的运输层。采用了超时重传、发送和接收端到端的确认分组等机制,即

2018-01-03 15:54:47 218

原创 调用sendmsg时出现permission denied错误

在使用ipsec-tools发送IKE协商包时,调用sendmsg时出现permission denied错误

2018-01-02 14:57:14 955

转载 DPDK内存管理三:用户接口

DPDK以两种方式对外提供内存管理方法,一个是rte_mempool,主要用于网卡数据包的收发;一个是rte_malloc,主要为应用程序提供内存使用接口。struct rte_mempool 内存池结构体/** * The RTE mempool structure. */struct rte_mempool { /* * Note: this field kept the

2017-12-29 17:31:21 716

转载 DPDK内存管理二:初始化

DPDK 内存的初始化主要在rte_eal_init()函数中进行:eal_hugepage_info_init()/* 获取系统中hugepage种类以及数量信息到internal_config.hugepage_info,用于后续内存初始化 */ if (internal_config.no_hugetlbfs == 0 && internal_config.

2017-12-29 16:46:30 3355

转载 DPDK内存管理一:结构体

DPDK的内存管理工作主要分布在几个大的部分:大页初始化与管理,内存管理。使用大页可以减少页表开销,是为了尽量减少TBL miss导致的性能损失。基于大页,DPDK又进一步细化管理这部分内存,使得分配,回收更加方便。 大页内存的基本原理在前面已经解释过了,这里就不在继续。首先熟悉一下DPDK 内存相关的结构体:struct rte_mem_config(rte_eal_memconfig.h)

2017-12-29 15:52:36 1277

原创 DPDK l2fwd-crypto例子

DPDK二层转发和加密结合在一起,因为最近需要引用到DPDK的加解密函数,所以研究了这个例子配置运行:因为DPDK默认只提供了NULL CRYPTO POLL MODE DRIVER,所以我们需要在编译DPDK的时候打开其他 CRYPTO POLL MODE DRIVER的开关

2017-12-28 21:04:32 2822

转载 Vim编辑器打开时自动跳转到上次光标位置

在~/.vimrc里面添加如下内容:if has("autocmd") au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endifendif

2017-12-25 14:25:29 1013

原创 iptables——四表五链

netfilter/iptables IP 信息包过滤系统是一种功能强大的工具,可用于添加、编辑和除去规则,这些规则是在做信息包过滤决定时,防火墙所遵循和组成的规则。这些规则存储在专用的信息包过滤表中,而这些表集成在 Linux 内核中。在信息包过滤表中,规则被分组放在我们所谓的链(chain)中。

2017-12-21 17:25:32 1167

原创 DPDK源码学习——初始化

DPDK所有的宏定义基本都在rte_config.h(需要编译DPDK之后才会在目录中生成)中,所以第一个头文件应该为#include <rte_config.h>

2017-12-21 15:41:18 3094

转载 DPDK基本技术二

CPU的物理核,逻辑核概念一个物理封装的CPU(通过physical id区分判断)可以有多个核(通过core id区分判断)。而每个核可以有多个逻辑cpu(通过processor区分判断)。一个核通过多个逻辑cpu实现这个核自己的超线程技术。物理处理器封装个数: sockets, 中文翻译成“插槽”,也就是所谓的物理处理器封装个数,即俗称的“物理CPU数”,管理员可能会称之为“路”。 例如一块

2017-12-19 21:24:18 643

转载 DPDK基本技术一

Linux环境下的UIO(userspace I/O)UIO指的是运行在用户空间的I/O技术,是实现用户空间下驱动程序的支撑机制。

2017-12-19 21:12:08 5234 1

原创 linux定时任务crontab

crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务 一般在两个地方设置定时任务:用户任务调度:/var/spool/cron目录下对应的用户文件系统任务调度:/etc/c

2017-12-14 17:22:31 163

原创 Unix中的段

Segment(段):表示一个二进制文件相关的内容块C语言各部分对应的段地址:

2017-12-14 17:05:44 164

原创 C语言中的符号重载

在C语言中,有些符号在不同位置表示不同意义,下面列举常用的符号重载

2017-12-14 16:52:12 1335

原创 c语言获取当前文件位置的宏

在C语言中,使用几个标准预定义宏,便可轻松实现获取代码文件名、代码行数及日期时间的功能。 这几个宏的定义如下(注意:前后都是两条连续的下划线): FILE:在源文件中插入当前源文件名。 FUNCTION:在源文件中插入当前源代码所在函数名。 LINE:在源代码中插入当前源代码行号。 DATE:在源文件中插入当前的编译日期。 TIME:在源文件中插入当前编译时间。一个简单的例子:#defin

2017-09-12 11:35:13 2874

转载 IO多路复用之epoll

1、基本知识  epoll是在2.6内核中提出的,是之前的select和poll的增强版本。相对于select和poll来说,epoll更加灵活,没有描述符限制。epoll使用一个文件描述符管理多个描述符,将用户关系的文件描述符的事件存放到内核的一个事件表中,这样在用户空间和内核空间的copy只需一次。2、epoll函数  epoll实现的三个函数,分别如下:#in

2017-01-23 17:09:59 304

原创 I/O多路复用之select

I/O多路复用机制,就是说通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作。

2017-01-23 11:32:50 265

转载 shell逐行读取每一列的结果集

在Linux下用shell脚本读取MySQL结果集各数据项的值,按行读取sql结果,将sql执行结果读取到shell变量中,然就可进行处理。HOSTNAME=”172.16.xx.xx”    #数据库信息PORT=”3306”USERNAME=”root”PASSWORD=”root”DBNAME=”log”         #数据库名称TABLENAME=”student”COMMAN

2016-11-17 11:32:22 7958

原创 C/C++中字符的基本操作

不同类型字符串之间转换的方式1、  char *转string:char *a=”luo”; string b = string(a);//或者直接stringb(a);2、  string转char *:string b = “luo”; char *a = sprintf_s(a, b.length(), “%s”, b);

2015-10-07 21:56:51 430

原创 C/C++中const的基本特性

1、当一个类的成员函数被声明为const时,则这个成员函数不能修改类的数据成员,可以通过对类里面的数据成员加上mutable修饰,就可以修改该数据成员class TestConst{public: TestConst(int i); ~TestConst(); int incr() const; int decr(); private: mutable int m_Coun

2015-10-07 13:57:27 874

原创 关于提示:invalid use of incomplete type

gcc或者g++中,在两个类需要相互引用时:如果某个类的.h文件中声明另一个类的指针,可以使用class关键字先进行声明,而不需包含头文件;但如果涉及到定义某个类的对象或是引用类的某个具体成员时,则必须包含该类的头文件,并且不要加class关键字进行声明。否则,将会出现标题所示编译错误!如果我们需要在类A中的头文件中定义类B的指针时,同时在类B中我们也要定义类A的指针,这时我们可以使用

2015-09-27 22:46:10 10939

原创 在插件中增加检测防火墙是否开启的功能

在扫描项目的插件中增加一项检测防火墙的功能:1、声明一个存储防火墙状态的枚举类型并且实例化一个对象作为全局变量//@author Denny // \brief 防火墙状态 enum FIREWALL_STATUS { FIREWALLUNKNOWN = 0, FIRE

2015-01-21 10:39:17 629

标准C语言基础教程第四版

标准C语言基础教程的中文版,第四版,大小有23.5M

2012-09-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除