自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(79)
  • 资源 (5)
  • 收藏
  • 关注

原创 openEuler上如何安装qemu

openEuler安装qemuopenEuler版本:20.09 LTS1.安装依赖库dnf install -y libglib2-devel pixman-devel2.执行configure./configure --target-list=arm-softmmu,aarch64-softmmu3.执行make && make install

2021-09-24 21:13:30 1318 2

转载 DPDK 全面分析

文章转载自https://www.cnblogs.com/bakari/p/8404650.htmlPS:欢迎大家关注我的公众号:aCloudDeveloper,专注技术分享,努力打造干货分享平台,二维码在文末可以扫,谢谢大家。高性能网络技术随着云计算产业的异军突起,网络技术的不断创新,越来越多的网络设备基础架构逐步向基于通用处理器平台的架构方向融合,从传统的物理网络到虚拟网络,从扁平...

2018-07-27 21:47:49 5763

转载 Linux下的I/O复用与epoll详解

前言      I/O多路复用有很多种实现。在linux上,2.4内核前主要是select和poll,自Linux 2.6内核正式引入epoll以来,epoll已经成为了目前实现高性能网络服务器的必备技术。尽管他们的使用方法不尽相同,但是本质上却没有什么区别。本文将重点探讨将放在EPOLL的实现与使用详解。为什么会是EPOLLselec...

2018-07-27 20:02:28 279

转载 同步,异步,阻塞,非阻塞以及几种常见的服务器模型

  在多数的情况下,我们谈论这几个概念时都是涉及到I/O操作时,当计算机在等待数据从磁盘或者其他存储设备(网络socket)到达用户进程所用空间时所涉及的几个概念。  我们认为首先CPU会发出一个I/O操作的通知,然后文件系统或其他会调用相关设备执行这些操作,最后当数据到达用户空间后发出一个中断的完成标志,于是在这个从CPU发出调用到收到完成标志的过...

2018-07-25 21:43:12 400

转载 SourceInSight自定义命令说明与应用

 1.Custom Command Dialog boxCommand显示当前选中命令的名字. 下拉列表中包含了所有的自定义命令.Run命令行,当调用自定义命令时,这个命令行就会被执行. 命令行中可以包含特殊的元字符. 详见 “The ‘Run’ Field Format”.Dir设定命令行执行时的工作目录.Source Insight 会在命令行执行前将当前工作目...

2018-07-14 13:06:02 676

转载 TCP的三次握手以及重置(Reset)

在最近的工作中需要对同一个域名下的源站同时发起多次请求,有时甚至达到了6000次,发生了很严重的性能问题,追查了下原因是被浏览器(Chrome)stalled了,因为浏览器只支持对同一个域名下保持6个连接,拥有更多连接时,就只能被挂起,直到上一个连接完成被复用。所以同时发起6000次请求,100ms的耗时也将会导致100秒的处理时间,在实际过程中复用连接将会导致更高的耗时。最终的解决方案当然是...

2018-07-01 17:03:43 5277

转载 C++ STL list

头文件#include<list>声明一个int型的list:list<int> a;1、list的构造函数[cpp] view plain copy print?list<int>a{1,2,3}  list<int>a(n)&am

2018-06-09 21:57:16 547

转载 C++ STL 向量vector

Vector是同一种类型的对象的集合,每个对象都有一个对应的整数索引值。Vector的数据安排及操作方式与array非常相似,唯一的差别在于array是静态空间,一旦配置了就不能改变;vector是动态空间,随着元素的加入,它的内部机制会自行扩充空间以容纳新元素。 使用vector之前,必须包含相应的头文件和命名空间:#include <vector>using std::...

2018-06-09 21:12:00 251

原创 输入一个正数 n,输出所有和为 n 连续正数序列

题目:输入一个正数 n,输出所有和为 n 连续正数序列 分析:如 15,1+2+3+4+5=4+5+6=7+8=15,可以看出有3组序列。此处可以看出当数为奇数时,两连续数相加可以得到,这种组合为数字最大的组合。故我们可以从1到正数的一半(n/2+1)遍历所有和的组合。 #include<stdio.h>void seq(unsigned int n){ in...

2018-05-12 22:27:31 3943

原创 深入解析Linux 常用命令--awk

1.概述2.awk命令行格式3.awk示例1)打印所有文件内容2)打印部分列3)模式匹配4)精确匹配5)不匹配6)条件/逻辑组合7)内置变量8)计算9)新增输出内容4.注意事项1.概述awk是一个功能十分强大的文本处理命令,本文主要介绍一些常用的文本处理方法。2.awk命令行格式格式1: awk ‘{[pattern] acti...

2018-04-29 16:44:28 403

原创 深入解析Linux 常用命令--sed

1.概述2.总述2.1sed命令行格式2.2 常用选项2.3 常用命令 3.各选项用法3.1 -i3.2 -n3.3 p3.4 a/i3.5 d3.6 模式匹配查询3.7 替换一行或多行 c3.8 替换字符串 s3.9 显示文件行号 =3.10 sed 结果写入到文件w3.11 替换路径4 注意事项1.概述sed是一个功能十...

2018-04-29 14:09:58 486

转载 在centos7上安装Jenkins

目录安装如果没有java的话要安装java启动和停止jenkins的默认设置打开和关闭防火墙关于centos上的java配置端口配置java路径启动参考在centos7上安装Jenkins安装添加yum repos,然后安装sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.r...

2018-04-27 21:26:21 255

原创 libcli应用

libcli应用通常在我们的程序运行中,我们需要对程序运行状态,变量值等情况进行了解,此时我们就可以用到Libcli库。libcli可以从此处下载:http://freshmeat.sourceforge.net/projects/libcli目录结构:[root@smart myself]# tree.├── build.sh├── cli├── cli.c├── cl...

2018-04-26 21:29:06 1302

原创 分治算法--假币问题

将这n个硬币分成两等份,然后放到天平的两端,则假币在较轻的那一端;然后将较轻的那一端的硬币再分成2等份,然后再放到天平的两端进行比较,假币还是在较轻的那一段;直到最后只剩下两个硬币了,分别放到天平的两端,轻的哪一个就是假币。当然,最后也可能剩下3个硬币,我们可以将这3个硬币中任意拿出来一个,然后将剩下的两个放到天平的两端,如果天平是平的,则说明拿出来的那个硬币就是假币;如果天平不是平的,则轻的那一...

2018-04-25 22:37:08 4872

原创 递归算法-阶乘计算

常见的递归算法当属阶乘了,如求5!,此处需要特别注意溢出问题。算法实现如下:#include <iostream>using namespace std;#define U64 unsigned long long#define U16 unsigned shortU64 factorial(U64 n){ if(1 == n) return...

2018-04-25 21:50:36 980

原创 递推算法-兔子产仔问题

13世纪意大利数学家斐波那契的《算盘书》中记载了典型的兔子产仔问题,其大意如下:如果一对一个月大的兔子以后每一个月都可以生一对小兔子,而一对新生的兔子出生两个月才可以生出小兔子。也就是,1月份出生,3月份开始产仔。那么假定一年内没有产生兔子死亡事件,那么1年之后共有多少对兔子呢?我们来分析一下兔子产仔问题。我们先逐月看每月兔子的对数。 第一个月:1对兔子; 第二个月:1对兔子; 第三个月...

2018-04-25 21:24:10 1766

原创 鸡兔同笼问题

问题:已知鸡、兔的头和脚总数,求分别有多少只鸡和兔?对于该问题我们可以采用穷举法来计算。分析:一只鸡有一个头、两只脚一只兔子有一个头、四只脚设鸡有x只,兔有y只,就得到了一个两个方程:x + y = sum(头)2*x + 4*y=sum(脚)由二元一次方程特性可知,当我们知道头和脚的数量时,我们可以得到鸡和兔的数量。采用代码实现如下:#include &...

2018-04-24 22:34:20 1068

原创 利用虚拟机增加小米WiFi链的生长因子

近日上线了小米WiFi链,试了下可以利用虚拟机Linux通过添加IP的方式提高生长因子,从而在相同时间内获得更多的米粒。具体方法如下:1.准备一台Linux虚拟机,具体安装方法可百度。2.给该虚拟机添加IP,需要与手机公用WiFi,并可以访问的IP地址。大家可以使用如下脚本自动连续添加IP地址:##file:addip.sh#!/bin/bashfor(( i=1 ;i&...

2018-04-19 23:22:29 564

原创 如何得到程序中6字节的结构体

在工作中我们可能会遇到这样的情况,我们知道有个大小为100字节的变量存在内存未释放的情况,但是很难从数量庞大的代码中寻找该结构体。那我们有什么方法可以快速找到么?我们在gcc编译时通常会添加一些编译选项用来保证程序的质量,今天我们就用-Wlarger-than=x的选项来查找我们需要的结构体。#include <stdio.h>typedef struct{ int...

2018-04-14 11:36:00 348

原创 你需要知道的指针强转

在工作中经常可以看到函数中传递指针,同时偶尔也能看到指针强转的滥用,今天就来说说函数中的指针强转。无论何时都不应该出现不同类型的指针强转,如int型指针转为char型指针,int型指针转为double指针等。应确保在传递过程中指针类型不改变。如下示例:#include <stdio.h>void test(void *b){ int c=0; ...

2018-04-13 20:21:35 560 1

原创 联想服务器磁盘阵列划分

1.F1进入配置界面 2.进入系统设置,选择storage 3.进入Main Manu4.进入配置管理,先清除配置再创建虚拟驱动 5.返回,选择控制器管理 选择boot device,勾上刚刚创建的Raid 6.返回选择虚拟设备管理 查看驱动器是否已初始化 待初始化完成 进行快速初始化7.返回至系统配置和boot管理页面,选择boot mange ...

2018-03-28 23:39:30 6352

原创 常用变量名命名方法

目前常用的变量名命名方法有以下几种: 1.驼峰法 驼峰法以小写开头,如 myApp,myName等类似命名。2.匈牙利命名法 以变量类型的缩写开头,如int iCount;unsigned int uiNum等类似命令。3.帕斯卡命名法 帕斯卡命名方法与驼峰法有点类似,它以大写开头,后面与驼峰相似。如MyApp,MyName等4.下划线命名法 下划...

2018-03-13 21:46:46 6752

原创 Linux SSH登录权限控制

近日在云端开发过程中,莫名其妙的程序被重启了,现象非常奇怪。采用history命令看到有执行重启程序指令,但是我很清楚自己没有执行。使用who命令查看后,发现除了我还有其他人登录我的服务器。遂想到通过SSH配置文件控制,方法非常简单,只需在/etc/ssh/sshd_config文件添加即可。如下:1.禁止root用户登录​ DenyUsers root在此情况下,root...

2018-03-02 20:48:37 9976

原创 栈溢出问题分析

栈溢出问题分析近日,程序总是莫名其妙的coredump,而且还是在变量定义的时候(如 int a=1),百思不得其解。在这种情况下,只有几种情况可能出现:内存踩踏、栈溢出。在经过长时间的分析确认,肯定不是内存踩踏。剩下的就是栈溢出了。Linux下一般单个程序栈大小为10M,可用ulimit -s查阅。一般情况下,10M的大小足够用,怎会出现栈溢出。再次对代码进行了详细的分析,发现有一处

2018-02-03 14:46:18 3157

原创 执行脚本提示shell-init: error retrieving current directory:getcwd问题分析

近日,在部署完我们的程序后,调用脚本启动程序突然提示错误:shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory[root@smart hello]# cat /root/Desktop/hello.sh #!/b

2018-02-01 21:58:40 33654 2

原创 MobaXterm工具

1 登录1.1 远程登录1.1.1 内建命令行模式1) 点击图标,在弹出的窗口中选择SSH连接,然后填入Remote host IP及用户名。 2) 点击确认后输入密码即可 1.1.2 Gnome模式(类似VNC)1) 点击图标,在弹出的窗口中选择SSH连接,然后填入Remote host IP及用户名。 2)

2018-01-14 14:56:43 51388 1

原创 字节对齐

近日在工作中遇到一个奇怪问题,A程序发送一个结构给B程序,在B程序接收后,B程序按照A程序的结构进行解析,但始终不对。看过结构定义后,虽然知道有可能会出现字节对齐问题,一直怀疑是他们消息传输构造不对。经过GDB确认A程序发出的结构是正确的,在B程序接收处也同样没问题。当调试到转化处时才发现确实是字节对齐导致的。下面举例说明(32bit Linux Gcc)。server.c#includ

2018-01-14 13:46:35 279

原创 深入解析Linux 常用命令--top

深入解析Linux常用命令–top深入解析Linux常用命令top概述各项说明第一行第二行第三行第四行第五行进程信息交互操作指令1.概述当我们在Linux环境下运行我们的程序时,我们经常会使用top命令来查看程序的运行状态,CPU、内存使用情况,类似我们在Windows下的任务管理器,可以查看内存的使用情况,剩余情况等。2.各项说明在终端中直接输入top即可查看当前资源使用情况信息

2017-12-30 09:55:25 1164

原创 深入解析Linux 常用命令--route

深入解析Linux常用命令–route概述路由类型命令a显示数字地址不解析主机名b查看内核路由表缓存路由配置a添加路由b删除路由1.概述route用于查看路由表、增加路由、删除路由、修改路由表等操作。2.路由类型a.主机路由:表示指向单个IP地址或主机名的路由b.网络路由:表示指向某个网路的路由c.默认路由:表示不能再路由表中找到的目标主机或网路的路由3.命令a.显示数字地址(不解析

2017-12-29 22:37:38 876

原创 深入解析Linux 常用命令--ps

深入解析Linux常用命令–psps用于显示当前正在运行的进程。ps - report a snapshot of the current processes.常用参数:ps -ef|grep xps -aux|grep x 列出详细信息2017/12/29

2017-12-29 22:36:21 638

原创 深入解析Linux 常用命令--lsof

深入解析Linux常用命令–lsof深入解析Linux常用命令lsof概述各参数含义1.概述lsof用于显示打开的文件。list open files。2.各参数含义a.-c列出指定进程所打开的文件[root@smart Desktop]# lsof -c XorgCOMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAM

2017-12-28 18:58:52 397

原创 深入解析Linux 常用命令--cut

深入解析Linux常用命令–cut深入解析Linux常用命令cut概述各参数含义1.概述cut用于截取部分字符或字符串等2.各参数含义a.-b 选择部分字节cut -b 1 选择第一个字节cut -b 1- 选择第一个字节及其后的字节cut -b 3,5,6-[root@smart temp]# cat test.txt |cut -b 1htit[root@sma

2017-12-26 19:15:33 364

原创 基于LTE系统的GRE隧道配置方法

今日由于项目需求,需要搭建一个承载于LTE系统的数据隔离测试网,该方案采用GRE隧道方案,通过不同目的IP地址走不同隧道来实现数据隔离。0.前言​ 此处GRE并非是Graduate Record Examination(美国研究生入学考试),此处为通信行业名词,Generic Routing Encapsulation,即通用路由封装。它可以对某些网络层协议的数据报进行封装,使这

2017-12-25 21:51:29 6589

原创 深入解析Linux 常用命令--rm

深入解析Linux常用命令–rm1.概述rm也是我们经常用到的一个Linux命令,常用于文件和文件夹的删除,rm取自于remove。官方解释为:“Remove files or directories”,即移除文件和目录。2.各选项解释1)-f-f选项表示:不管文件是否存在均不出现提示。[root@smart linux]# rm -f a.t[roo

2017-12-20 20:18:39 440

原创 深入解析Linux 常用命令--mv

深入解析Linux常用命令–mv1.概述mv常用于重命名文件或文件夹。2.各选项解释1)-f-f选项表示:不管文件是否存在均不出现提示。[root@smart linux]# mv a bmv: overwrite `b'? y[root@smart linux]# touch a [root@smart linux]# mv -f a b

2017-12-20 20:18:25 524

原创 深入解析Linux 常用命令--du

深入解析Linux常用命令–du深入解析Linux常用命令du概述不带参数显示所有文件及文件夹大小显示容量大小单位以人类可读方式不显示0字节大小文件显示最大深度1.概述du常用于查看占用空间大小。2.不带参数默认情况下,du只显示文件夹大小。[root@smart Desktop]# ls -paa cd.txt.

2017-12-20 20:18:11 521

原创 深入解析Linux 常用命令--df

深入解析Linux常用命令–df深入解析Linux常用命令df概述不带参数以人类可读方式指定文件夹路径1.概述du常用于查看磁盘剩余空间大小。2.不带参数默认情况下,df显示磁盘空间使用情况[root@smart linux]# dfFilesystem 1K-blocks Used Availa

2017-12-20 20:18:01 283

原创 深入解析Linux 常用命令--cd

深入解析Linux常用命令–cd1.概述cd常用于切换目录,改变目录(change directory)2.切换目录cd [Directory] , [Directory] 可以 为任意存在的目录。[root@smart Desktop]# pwd/root/Desktop[root@smart Desktop]# cd /[root@smart /]# p

2017-12-20 20:17:21 208

原创 深入解析Linux 常用命令--cat

深入解析Linux常用命令–cat1.概述cat常用于查看文件内容。2.显示文件内容(显示字符)cat -A 显示文件内容,包括结束符、TAB。其中结束符以$显示,TAB以^I显示,空格不显示。[root@smart Desktop]# cat test.mdAUTHOR Written by Richard M. Stallman and Davi

2017-12-20 20:17:11 298

原创 深入解析Linux 常用命令--arping

深入解析Linux常用命令–arping深入解析Linux常用命令arping概述arping各参数含义1.概述arping常用于检测IP是否已经存在、某个IP的MAC的地址等。2.arping各参数含义a.无参数,持续的向特定IP地址请求arp[root@smart Desktop]# arping 192.168.1.105 ARPIN

2017-12-20 20:13:39 2044

dpdk-18.02.2-stable

2. DPDK Release 18.08 2.1. New Features Added support for Hyper-V netvsc PMD. The new netvsc poll mode driver provides native support for networking on Hyper-V. See the Netvsc poll mode driver NIC driver guide for more details on this new driver. Added Flow API support for CXGBE PMD. Flow API support has been added to CXGBE Poll Mode Driver to offload flows to Chelsio T5/T6 NICs. Support added for: Wildcard (LE-TCAM) and Exact (HASH) match filters. Match items: physical ingress port, IPv4, IPv6, TCP and UDP. Action items: queue, drop, count, and physical egress port redirect. Added ixgbe preferred Rx/Tx parameters. Rather than applications providing explicit Rx and Tx parameters such as queue and burst sizes, they can request that the EAL instead uses preferred values provided by the PMD, falling back to defaults within the EAL if the PMD does not provide any. The provision of such tuned values now includes the ixgbe PMD. Added descriptor status check support for fm10k. The rte_eth_rx_descriptor_status and rte_eth_tx_descriptor_status APIs are now supported by fm10K. Updated the enic driver. Add low cycle count Tx handler for no-offload Tx. Add low cycle count Rx handler for non-scattered Rx. Minor performance improvements to scattered Rx handler. Add handlers to add/delete VxLAN port number. Add devarg to specify ingress VLAN rewrite mode. Updated mlx5 driver. Updated the mlx5 driver including the following changes: Added port representors support. Added Flow API support for e-switch rules. Added support for ACTION_PORT_ID, ACTION_DROP, ACTION_OF_POP_VLAN, ACTION_OF_PUSH_VLAN, ACTION_OF_SET_VLAN_VID, ACTION_OF_SET_VLAN_PCP and ITEM_PORT_ID. Added support for 32-bit compilation. Added TSO support for the mlx4 driver. Added TSO support for the mlx4 drivers from MLNX_OFED_4.4 and above. SoftNIC PMD rework. The SoftNIC PMD infrastructure has been restructured to use the Packet Framework, which makes it more flexible, modular and easier to add new functionality in the future. Updated the AESNI MB PMD. The AESNI MB PMD has been updated with additional support for: 3DES for 8, 16 and 24 byte keys. Added a new compression PMD using Intel’s QuickAssist (QAT) device family. Added the new QAT compression driver, for compression and decompression operations in software. See the Intel(R) QuickAssist (QAT) Compression Poll Mode Driver compression driver guide for details on this new driver. Updated the ISA-L PMD. Added support for chained mbufs (input and output).

2018-09-02

DPDK-18.08-rc03

2. DPDK Release 18.08 2.1. New Features Added support for Hyper-V netvsc PMD. The new netvsc poll mode driver provides native support for networking on Hyper-V. See the Netvsc poll mode driver NIC driver guide for more details on this new driver. Added Flow API support for CXGBE PMD. Flow API support has been added to CXGBE Poll Mode Driver to offload flows to Chelsio T5/T6 NICs. Support added for: Wildcard (LE-TCAM) and Exact (HASH) match filters. Match items: physical ingress port, IPv4, IPv6, TCP and UDP. Action items: queue, drop, count, and physical egress port redirect. Added ixgbe preferred Rx/Tx parameters. Rather than applications providing explicit Rx and Tx parameters such as queue and burst sizes, they can request that the EAL instead uses preferred values provided by the PMD, falling back to defaults within the EAL if the PMD does not provide any. The provision of such tuned values now includes the ixgbe PMD. Added descriptor status check support for fm10k. The rte_eth_rx_descriptor_status and rte_eth_tx_descriptor_status APIs are now supported by fm10K. Updated the enic driver. Add low cycle count Tx handler for no-offload Tx. Add low cycle count Rx handler for non-scattered Rx. Minor performance improvements to scattered Rx handler. Add handlers to add/delete VxLAN port number. Add devarg to specify ingress VLAN rewrite mode. Updated mlx5 driver. Updated the mlx5 driver including the following changes: Added port representors support. Added Flow API support for e-switch rules. Added support for ACTION_PORT_ID, ACTION_DROP, ACTION_OF_POP_VLAN, ACTION_OF_PUSH_VLAN, ACTION_OF_SET_VLAN_VID, ACTION_OF_SET_VLAN_PCP and ITEM_PORT_ID. Added support for 32-bit compilation. Added TSO support for the mlx4 driver. Added TSO support for the mlx4 drivers from MLNX_OFED_4.4 and above. SoftNIC PMD rework. The SoftNIC PMD infrastructure has been restructured to use the Packet Framework, which makes it more flexible, modular and easier to add new functionality in the future. Updated the AESNI MB PMD. The AESNI MB PMD has been updated with additional support for: 3DES for 8, 16 and 24 byte keys. Added a new compression PMD using Intel’s QuickAssist (QAT) device family. Added the new QAT compression driver, for compression and decompression operations in software. See the Intel(R) QuickAssist (QAT) Compression Poll Mode Driver compression driver guide for details on this new driver. Updated the ISA-L PMD. Added support for chained mbufs (input and output).

2018-09-02

TCP/IP状态迁移图

TCP/IP协议状态迁移图、状态列表及说明 ..................................................................

2018-07-08

libcli的应用实例

libcli库的应用实例 libcli provides a shared library for including a Cisco-like commandline interface into other software. It's a telnet interface which supports commandline editing, history, authentication, and callbacks for a user-definable function tree.

2018-04-26

基于博特CPE和华为路由器搭建GRE隧道网络GRE抓包

本文件为基于博特CPE和华为路由器搭建GRE隧道网络配置文章配套抓包

2017-12-25

空空如也

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

TA关注的人

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