自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(125)
  • 资源 (7)
  • 收藏
  • 关注

原创 博客搬迁

大家好:新博客已进行搬迁搬迁传送门。希望大家一起讨论,学习,进步......

2018-02-07 11:33:40 653 1

原创 C++多态总结

一、虚函数与多态1.如果将基类中的一个成员函数声明为虚函数(virtual),那么其子类中与该虚函数具有相同原型(返回类型相同、函数名相同、参数表相同、常属性相同)的成员函数就也成为虚函数,  并且和基类中的版本构成覆盖(override)关系。通过指向子类对象的基类指针,或者引用子类对象的基类引用,调用虚函数,实际被调用的将是子类中的覆盖版本。这种特性被称为多态。2.关于虚函数覆盖

2017-05-27 13:59:51 823

原创 sockaddr和sockaddr_in的区别

套接字编程需要指定套接字的地址作为参数,不同的协议族有不同的地址结构定义方式。这些地址结构通常以sockeaddr_开头,每一个协议族有一个唯一的后缀,例如对于以太网,其结构名称为sockaddr_in. 1.通用套接字数据结构    通用的套接字地址类型的定义如下,它可以在不同协议族之间进行强制转换。include struct sockaddr { unsi

2017-05-27 13:56:53 5604

原创 使用某类型是否用声明的思考

原因:由于看linux协议栈内核源码使遇到了如下情况:#ifndef _NET_NEIGHBOUR_H#define _NET_NEIGHBOUR_H#include /* * Generic neighbour manipulation * * Authors: * Pedro Roque * Alexey Kuznetsov * * Changes:

2017-04-06 13:17:48 582

原创 Python IDE(集成开发环境)

本文为大家推荐几款款不错的 Python IDE(集成开发环境),比较推荐 PyCharm,当然你可以根据自己的喜好来选择适合自己的 Python IDE。 PyCharmPyCharm 是由 JetBrains 打造的一款 Python IDE。PyCharm 具备一般 Python IDE 的功能,比如:调试、语法高亮、项目管理、代码跳转、智能提示、自动完成、单元测试、版本

2017-04-06 08:58:49 1817

原创 URL详解

一:URL举例就以下面这个URL为例,介绍下普通URL的各部分组成http://www.aspxfans.com:8080/news/index.asp?boardID=5&ID=24618&page=1#name从上面的URL可以看出,一个完整的URL包括以下几部分:1.协议部分:该URL的协议部分为“http:”,这代表网页使用的是HTTP协议。

2017-04-05 20:07:36 20054

原创 引用详解

引用型参数一个函数引用参数实际上就是调用者实参的别名。对该参数的修改将直接影响实参的值。1)通过函数引用型参数可以修改实参的值。2)通过向函数传递引用型参数,避免数据拷贝的开销。如果该函数不需要修改实参的值,那么最好使用常引用形式的形参,以防止在函数对实参进行意外的修改。3.引用型返回值1)不要从函数中返回对局部变量的引用。2)可以返回对全局变量、静态局部变量、实参

2017-03-22 09:26:08 703

原创 Linux内核 hlist_head/hlist_node结构解析

int fz_divisor;表示散列表fz_hash的容量,以及散列表桶的数目。内核中的定义:struct hlist_head {    struct hlist_node *first;};struct hlist_node {    struct hlist_node *next, **pprev;};这个数据结构与一般的hash-l

2017-03-07 17:51:23 2010

原创 网络名词汇总

#H     HDLC:高级数据链路控制(High-Level Data Link Control或简称HDLC),是一个在同步网上传输 数据、面向比特的数据链路层协议,它是由国际标准化组织(ISO)根据IBM公司的SDLC(Synchronous Data Link Control)协议扩展开发而成的。

2017-02-27 10:12:29 910

原创 Ubuntu 输入正确的密码后,黑屏一闪,重新返回到登陆界面问题解决

一,问题描述:Ubuntu出现登陆界面后,选择用户名,输入密码,然后登陆画面消失,似乎要进入系统了;但很快,又出现了同样的用户登陆界面,再次选择用户名、输入密码,再次来到这个状态,形成一个死循环。二,解决办法:1.若是本地的虚拟机运行的服务:在登录界面Ctrl+Alt+F1进入命令行界面:先找到这个文件:/home/user/.xsession-errors打开这个文件

2017-02-08 14:05:56 14807

原创 由于编码问题引发的ODBC插入数据库中文错误

一:问题:用ODBC将字符数据插入数据库后,数据库中显示中文格式乱码,而英文格式完全正确,用ODBC进行查询操作完全正确。如下所示二:解决问题:查看编码方式是否统一。1.首先查看数据库分别是什么编码格式:2.查看插入的表格是什么格式:3.查看ODBC进行连接是的字符集。我的数据源配置文件显示如下:到目前为止,发现插入用和表

2017-02-07 15:06:53 8458

原创 二层交换机,三层交换机的区别

二层交换技术是发展比较成熟,二层交换机属数据链路层设备,可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部的一个地址表中。具体的工作流程如下:(1) 当交换机从某个端口收到一个数据包,它先读取包头中的源MAC地址,这样它就知道源MAC地址的机器是连在哪个端口上的;(2) 再去读取包头中的目的MAC地址,并在地址

2017-02-04 14:11:51 3170

原创 数据帧的产生

帧到底是由谁来产生的?网卡可以产生,交换机也可以产生。交换机产生的话是因为交换机之间需要一些协议来维护特定的功能,如STP,VTP而最重要的功能还是转发网卡(也就是主机)所产生的帧。追问那比如说,我的设备是这么连的:主机---路由器---交换机---外网。那网卡是在我计算机内的,也就是网卡直接跟路由器相连。那我要向外发送数据。网卡传给路由器的不是数据帧吗?可

2017-01-24 16:15:01 3584

原创 安全行业须知网址

一:漏洞提交平台      https://www.exploit-db.com   #面向全世界黑客的一个漏洞提交平台。

2017-01-24 08:35:37 451

转载 通过IP地址和子网掩码与运算计算相关地址

通过IP地址和子网掩码与运算计算相关地址    知道ip地址和子网掩码后可以算出:    1、 网络地址    2、 广播地址    3、 地址范围    4、 本网有几台主机    例1:下面例子IP地址为192·168·100·5 子网掩码是255·255·255·0。算出网络地址、广播地址、地址范围、主机数。    一)分步骤计算    1) 将IP地址和子网

2017-01-23 19:26:02 2645

转载 TCP:WireShark分析,序列号Seq和确认号Ack

转载自 http://blog.csdn.net/a19881029/article/details/38091243序列号为当前端成功发送的数据位数,确认号为当前端成功接收的数据位数,SYN标志位和FIN标志位也要占1位如果你正在读这篇文章,很可能你对TCP“非著名”的“三次握手”或者说“SYN,SYN/ACK,ACK”已经很熟悉了。不幸的是,对很多人来说,对TCP的

2017-01-17 13:27:53 5968

转载 shell getopts 用法

c语言里面有个getopt_long,可以获取用户在命令下的参数,然后根据参数进行不同的提示或者不同的执行。在shell中同样有这样的函数或者用法吧,在shell里面是getopts,也有一个getopt是一个比较老的。这次说getopts,我自己的一些用法和感悟。首先先来一个例子吧:[hello@Git shell]$ bash test.sh -a hellothis i

2017-01-13 16:40:45 480

原创 shell脚本中单引号和双引号

shell脚本中的单引号和双引号一样都是字符串的界定符,而不是字符的界定符。单引号用于保持引号内所有字符的字面值,即使引号内的\和回车也不例外,但是字符串中不能出现单引号。(注意是所有,只是单引号本身不能够出现在其中)。    双引号用于保持引号内所有字符的字面值(回车也不例外),但以下情况除外:$加变量名可以取变量的值反引号仍表示命令替换\$表示$的

2017-01-13 11:39:46 3885

转载 Linux Shell 之 Shell中的函数调用

说起函数调用,相信大家也不会陌生,然而对于初学Shell的我来说,Shell中函数调用方式却有点让我不太习惯,自己也走了不少的弯路,因为传递参数时出了一个很“自然”的错误,也让我吃了不少的苦头,所以总结一下Shell中函数的调用方法。一、Shell中函数的定义为了方便程序和管理和模块化并减少代码的重复,函数的确是一个好东西。而Shell中函数的定义有两种方法,如下:fu

2017-01-13 10:12:46 511

转载 Linux shell 的 test 命令用法详解

基本格式:test expressionexpression为test命令构造的表达式。这里expression是test命令可以理解的任何有效表达式,该简化格式将是读者可能会踫见的最常用格式返回值:test命令或者返回0(真) 或者返回1(假).test可理解的表达式类型分为四类:    表达式判断    字符串比较    数字比较    文件比较1)

2017-01-13 10:00:02 519

原创 /sys 文件系统下的目录结构

/sys 文件系统下的目录结构这个目彔其实跟/proc非常类似,也是一个虚拟的文件系统,主要也是记彔不核心相关的信息。 包括目前已加载的核心模块不核心侦测到的硬件装置信息等等。这个目彔同样丌占硬盘容量。/sys 下的目录结构是经过精心设计的:在 /sys/devices 下是所有设备的真实对象,包括如视频卡和以太网卡等真实的设备,也包括 ACPI 等不那么显而易见的真实设备、还

2017-01-12 19:37:53 744

转载 shell变量详解

1 shell变量基础shell变量是一种很“弱”的变量,默认情况下,一个变量保存一个串,shell不关心这个串是什么含义。所以若要进行数学运算,必须使用一些命令例如let、declare、expr、双括号等。shell变量可分为两类:局部变量和环境变量。局部变量只在创建它们的shell中可用。而环境变量则可以在创建它们的shell及其派生出来的任意子进程中使用。有些变量是用户创建的,

2017-01-12 18:41:50 331

原创 Python系统性能信息模块psutil

通常linux系统的基础信息如内存、cpu等这些都是通过shell来获取。不过python的psutil模块把shell查看系统基础信息的功能都包装了下,使用更加简单,功能丰富。shell命令如下:物理内存total 值: free -m | grepMem | awk '{print $2}'物理内存used 值: free -m | grepMem | awk '{print

2017-01-11 15:53:36 2322

转载 Linux中通过/proc/stat等文件计算Cpu使用率

转自:http://blog.csdn.net/tenfyguo/article/details/7476306proc文件系统          /proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间。它以文件系统的方式为内核与进程提供通信的接口。用户和应用程序可以通过/proc得到系统的信息,并可以改变内核的某些参数。由于系统的信息,如进程,是动态改变的,所以用

2017-01-11 11:57:42 1218

转载 Linux free命令详解

free             total       used       free     shared    buffers     cachedMem:       4149156    4130412      18744          0      13220    2720160-/+ buffers/cache:    1397032    2752124Sw

2017-01-11 11:15:45 937

原创 取得设备运行时间

#!/bin/bash#取得设备运行时间Time=$(cat /pro/uptime | cut -d '.' -f 1)RunDay=$(($Time/86400))RunHour=$(($Time%86400/3600))RunMinute=$(($Time%3600/60))RunSecond=$(($Time%60))RunTime=$(printf "%02d:%02d:%

2017-01-10 13:25:40 1785

转载 shell 中 &&和||的方法

Shell && 和 ||    shell 在执行某个命令的时候,会返回一个返回值,该返回值保存在 shell 变量 $? 中。当 $? == 0 时,表示执行成功;当 $? == 1 时,表示执行失败。   有时候,下一条命令依赖前一条命令是否执行成功。如:在成功地执行一条命令之后再执行另一条命令,或者在一条命令执行失败后再执行另一条命令等。shell 提供了 && 和 ||

2017-01-09 11:29:20 8446

原创 mpstate监控CPU详解

用法:它显示了系统中 CPU 的各种统计信息。–P 0 选项指示该命令显示所有 CPU 的统计信息,CPU从个数0开始,ALL为所有。  而不只是特定 CPU 的统计信息。参数 2 2 指示该命令每隔 2秒运行一次,共运行 2 次。  以上输出首先显示了所有 CPU 的合计指标,然后显示了每个 CPU 各自的指标。最后,在结尾处显示所有 CPU 的平均值。 含义:%user

2017-01-06 11:35:44 1868

转载 一份试卷引发的思索

作者:长短短链接:https://zhuanlan.zhihu.com/p/24216611来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。试 卷姓名________ 学号________ 首先我们来看这个,试卷的名字和编号填写,这个部分有“漏洞”吗?有学生的姓名和编号都写在这儿,没有做任何保护措施,因此,你只要偷看了某人的

2016-12-26 09:29:22 378

转载 ubuntu 安装mysql及目录位置

安装sudo apt-get install MySQL-server mysql-client查看安装端口情况sudo netstat -tap | grep mysql配置文件位置sudo vim /etc/mysql/my.cnf打开关闭服务/etc/init.d/mysql start/stop卸载 sudo apt-get auto

2016-12-23 17:42:58 4085

原创 mysql中触发器性能问题

一、问题背景:当数据库中某个告警表插入一条数据后,就要通过http协议通知web端,产生了一条告警信息。二、解决方案:在Mysql中使用触发器+lib_mysqludf_sys调用外部命令,即通过调用shell脚本来通知web端,产生了告警,让web对告警数据库进行事件查询。1.lib_mysqludf_sys简介mysql中没有执行外部命令的函数,要调用外部的命令,可以通过开

2016-12-23 17:20:14 5890

原创 linux C语言实现文件锁之flock

一:flock函数特点:1.flock只能加全局锁。2.当一个进程用flock给一个文件加锁时,用另一个进程再给这个文件加锁,它会阻塞或者也可以返回加锁失败(可以自己设置)。3.当给一个文件加fcntl的独占锁后,再给这个文件加flock的独占锁,其会进入阻塞状态。4.当给一个文件加flock的独占锁后,用fcntl去获取这个锁信息获取不到,再用fcntl仍然可以给文件加锁。5

2016-12-22 11:04:57 9917 1

原创 SVN命令详解

1、将文件checkout到本地目录svn checkout path(path是服务器上的目录)例如:svn checkout svn://192.168.1.1/pro/domain简写:svn co       2、往版本库中添加新的文件svn add file例如:svn addtest.php(添加test.php)svn add *.php(添加当前

2016-12-21 10:47:36 662

转载 C++11 之 delete 和 default

1  特殊成员函数  设计一个类,没有成员函数 (member function),只有数据成员 (member data)class DataOnly {private: std::string strName;  // member data int   iData;};C++98 编译器会隐式的产生四个函数:缺省构造函数,析构函数,拷贝构造函

2016-12-20 18:50:56 531

转载 c++11中的using关键字

一般的using关键子我们都是用来声明当前文件的命名空间,比如标准库的命名空间std-> using namespace std;但在c++11中,它的用处还有几个 1:取代typedef  ,2:让父类同名函数在子类中以重载方式使用以下是《深入理解c++11》的对1:的截图以下是自己的实现//--------------------------------------

2016-12-20 17:53:50 470

原创 C++11初始化列表与参数列表的作用

最近遇到了一个程序,一开始有些莫名其妙,最后经过思考、猜想、验证的过程,将其总结如下:首先先上代码:函数声明如下:class Controller{ using AnalysisManager = NST::analysis::AnalysisManager; using FiltrationManager = NST::filtration::Filtratio

2016-12-20 16:18:18 5462

原创 使用SVN问题总汇

1.使用SVN提示“工作副本已经锁定”的解决办法。更新或者提交前执行一下clean up。如果在当前目录执行该命令后,仍然提示锁定,就到上一层目录再执行下2....

2016-12-12 18:44:30 326

转载 CIFS与NFS

1、  CIFSMicrosoft推出SMB(server message block)后,进一步发展,使其扩展到Internet上,成为common internet file system。 CIFS采用C/S模式,基本网络协议:TCP/IP和IPX/SPX;两种资源访问模式: (1)       share level security:所有用

2016-12-10 14:32:33 2984 1

原创 Linux 下设置环境变量

什么是环境变量      在Windows 系统下,很多软件安装都需要配置环境变量,比如 安装 jdk ,如果不配置环境变量,在非软件安装的目录下运行javac 命令,将会报告找不到文件,类似的错误。那么什么是环境变量?简单说,就是指定一个目录,运行软件的时候,相关的程序将会按照该目录寻找相关文件。 设置变量对于一般人最实用的功能就是: 不用拷贝某些dll文件到系统目录中了,而path

2016-12-07 15:25:43 492

原创 Makefile中的 = ?= := +=直接的区别

Makefile中在定义变量的时候,我们可以使用其它变量来构造变量的值,在Makefile中有两种方式来定义变量的值是=方式和:=方式。  在说明两者直接的不同时,先来说明下使用的变量。在Makefile中的定义的变量,就像是C/C++语言中的宏一样,他代表了一个文本字符串,在Makefile中执行的时候其会自动原模原样地展开在使用的地方。其与C/C++所不同的是,你可以在Makefile

2016-12-07 14:43:53 394

netfilter.pdf

主要对netfilter框架的原理和源码进行讲解,对于netfilter、iptables、conntrack、nat直接如何配合,进行了详细的图标绘制,源码分析,对于个人理解netfilter框架有很好的提高

2019-12-31

Linux Kernel Networking: Implementation and Theory

Linux Kernel Networking takes you on a guided in-depth tour of the current Linux networking implementation and the theory behind it. Linux kernel networking is a complex topic, so the book won't burden you with topics not directly related to networking. This book will also not overload you with cumbersome line-by-line code walkthroughs not directly related to what you're searching for; you'll find just what you need, with in-depth explanations in each chapter and a quick reference at the end of each chapter.

2017-09-15

黑客与画家

本书是硅谷创业之父Paul Graham 的文集,主要介绍黑客即优秀程序员的爱好和动机,讨论黑客成长、黑客对世界的贡献以及编程语言和黑客工作方法等所有对计算机时代感兴趣的人的一些话题。书中的内容不但有助于了解计算机编程的本质、互联网行业的规则,还会帮助读者了解我们这个时代,迫使读者独立思考。 本书适合所有程序员和互联网创业者,也适合一切对计算机行业感兴趣的读者。

2017-07-27

如何变得有思想 阮一峰博客文集_PDF电子书下载 带书签目录 高清完整版.pdf

如何变得有思想 阮一峰博客文集_PDF电子书下载 带书签目录 高清完整版.pdf

2017-07-27

网络是怎样连接的

一本浅显易懂介绍网络连接的数据,对于你我想肯定有很大的帮助,因为对于我认清楚网络整体过程提供了莫大的帮助

2017-07-26

jperf Windows

iperf 是一款基于命令行模式的网络性能测试工具,提供横跨 windows,linux,mac 的全平台支持。 jperf使用: jperf是图形界面的,安装jre(java runtime)后运行jperf.bat就可以运行。 此压缩包,包含jre安装包

2017-07-05

空空如也

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

TA关注的人

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