自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 C++ 给string对象赋值指向NULL的char型指针变量问题

将指向NULL的char型指针变量赋值给string对象将会导致段错误。如下示例代码#include<cstdio>#include<iostream>#include<string>#include<algorithm>#include <sys/vfs.h>#include <string>using n...

2020-03-12 14:28:17 1278

原创 oracle持续连接造成的内存泄漏及出现TNS ORA-12516问题

使用Oracle API短时间内持续连接Oracle server,会出现“ORA-12516: TNS:listener could not find available handler with matching protocol stack”错误,同时会造成内存泄漏。测试代码如下:#include <iostream>#include <deque>#incl...

2019-09-30 14:38:22 1199 1

原创 regex_t型智能指针引起的内存泄漏问题分析

我们知道,使用C++智能指针,可以省去我们在申请内存后需要释放对应内存的操作。比如,定义一个int型的shared_ptr并申请一块内存shared_ptr(int) pint(new int),如果给pint重新赋值,或者出pint的作用域,那么,pint原来指向的内存会自动释放,而不需要我们调用delete操作符做释放操作。不过,上述便利的前提是,申请的内存是基本数据类型,或者定义了析构函数...

2019-09-30 13:03:14 732

翻译 Bro与Snort或Suricata对比

Snort是最初于1998年开发的开源入侵检测系统(IDS)/入侵防护系统(IPS)Snort标志性格式的规则是整个威胁情报业的事实标准,它借用当时几款流行的开源工具(这些工具用于给网络流量指定唯一的特征,当特征满足时,则产生告警。在IPS模式下,如果希望,也可以丢弃或者阻止通信),提供了一种简单的规则定义语言。作为最早的全功能开源IDS平台,它在安全社区非常普及。普及性促使Snort成熟,但...

2019-08-21 10:19:48 5358

原创 plsql报ORA-12154:TNS:could not resolve the connect identifier specified错误原因之一

先安装了plsql和instantclient,plsql用于连接远程数据库(连接方法见另外一篇文章:https://blog.csdn.net/sj_djw/article/details/94608750)。后来测试需要,在本地又安装了oracle server。安装完oracle server,配置好tnsname.ora文件后,发现使用plsql连接不上server,连接过程中总是出现“...

2019-08-20 16:05:39 2836

原创 解决C/C++内存堆积问题思路

1、弄清问题现象及发送场景,尝试复现问题。使用内存检测工具进行排查,比如使用valgrind工具进行内存检测3、将现场出现内存泄露的进程生成coredump文件,使用gdb生成coredump文件valgrind不支持调试已运行程序5.4. Is it possible to attach Valgrind to a program that is already running?...

2019-08-06 18:05:37 3010

翻译 流量监控器Bro特性、历史及架构

引言概述Bro是一个被动的开源网络流量分析器。它主要是一个安全监视器,深入检查链路上的流量以发现可疑活动的迹象。然而,更普遍的讲,Bro支持一个范围广泛的流量分析任务,不仅在安全领域,还包括性能度量和协助排查故障。站点部署Bro最直接的好处是可以得到一组用高级术语记录网络活动的日志。这些日志不仅包括链路上检测到的每个链接的全面记录,还包括应用层副本,比如,所有HTTP会话...

2019-08-06 09:03:49 725

原创 vmware桥接模式下主机与虚拟机相互ping不通的几种情况

vmware桥接模式下主机与虚拟机相互ping不通几种原因:1、主机与虚拟机的IP没有配置在同一个网段。桥接模式下,虚拟机和主机具有同等地位,都连接到vmnet0虚拟交换机,因此两者的IP需要配置到相同的网段。一般,将虚拟主机的IP配置成与主机相同的网段的IP即可。2、主机开启了防火墙,禁止了Ping服务如下图,在防火墙中找到该服务,并允许。3、虚拟机开启了防火墙或者安全功能限制了pin...

2019-08-05 18:28:29 29315 3

原创 RabbitMQ FANOUT模式下创建生产者和消费者方法

源码路径:https://github.com/alanxz/SimpleAmqpClient创建消费者步骤:步骤1:创建channel,类似于创建一个tcp连接static ptr_t Create(const std::string &host = “127.0.0.1”, int port = 5672,const std::string &username = “g...

2019-08-02 11:36:06 712

原创 内存检测工具dmalloc在C++程序的运用

dmalloc是一款内存泄漏检测工具,主要用于检测C程序的内存泄漏问题。也可运用于C++程序内存泄漏的检测,但是无法打印出文件名和行号信息。该工具的下载地址为:http://dmalloc.com/下载最新版本v5.5.2到本地后,通过以下步骤应用到C++程序中。1、解压dmalloc-5.5.2.gz文件到本地路径2、编译前配置./configure --prefix=/home/wa...

2019-07-24 20:32:30 1477

转载 VMware虚拟机的网络模式 — 桥接模式、仅主机模式、NAT模式的特点和配置

了解网络模式之前,先看看所涉及到的虚拟设备一. VMware虚拟设备三种虚拟交换机(对应三种网络模式)VMnet0 虚拟交换机 :Bridged桥接模式VMnet1 虚拟交换机 :Host-Only仅主机模式VMnet8 虚拟交换机 :NAT模式打开VMware虚拟机,点击菜单栏 编辑 -> 虚拟网络编辑器,可查看这三种虚拟交换机三种虚拟网卡 ( 相当于物理主机和虚拟机的...

2019-07-20 23:59:18 1046

原创 mpc-1.0.3编译mpfr_fmma类型冲突错误

在编译mpc-1.0.3时出现mpfr_fmma类型冲突错误,错误信息如下图:编译mpc需要依赖GMP和MPFR,首先确保mpc-1.0.3要求的这两个库版本没有问题。要求的GMP和MPFR版本如下图:如下图红框所示,要求安装的依赖版本均满足要求,说明依赖是不存在问题的。根据错误信息,找到包含的头文件该函数的声明如下:再看看该函数再mul.c文件的声明,如下:两处声明不一致(仅...

2019-07-19 16:40:45 2414 2

原创 “undefined reference to symbol 'sem_post@@GLIBC_2.2.5'”及“DSO missing from command line”问题

编译过程中出现以下异常信息:[xxx@localhost memstat]$ g++ -o test commutex.cpp memrecord.cpp test.cpp -lboost_thread -DDEBUG_MEMORY -DLINUX tmp/cc6qIOs6.o: undefined reference to symbol 'sem_post@@GL...

2019-07-17 09:02:09 5357

转载 __gnu_cxx::hash_map编译的若干问题

今天看《libstdc++ manual 20110201》中提到这个hash_map是为了向后兼容SGI/HP的代码,但是已经被废弃了,取而代之的是C++0x中的unordered_map/unordered_multimap,在tr1文件夹中(老版本的编译器一般不带这个文件夹)。==========================================================...

2019-07-16 16:04:33 1331

原创 使用PLSQL Developer连接远程数据库的两种方法

使用plsql连接远程数据库,不仅要安装PLSQL Developer,还需要安装oracle instantclient客户端,并将PLSQL Developer的tools->preferences connection的oracle home设置成oracle instantclient的安装路径,OCI library设置成oracle instantclient的安装路径的oci....

2019-07-04 14:31:47 8929

原创 C/C++字节对齐规则

字节对齐与具体编译器相关,但一般都遵循以下三条规则:(1)结构体变量的首地址能够被其最宽基本类型成员的大小所整除;(2)结构体每个成员相对于结构体首地址的偏移量,都是#pragma pack指定的数值和该成员大小中较小那个的整数倍。如有需要编译器会在成员之间加上填充字节;(3)结构体的总大小为结构体最宽基本类型成员大小与#pragma pack指定的数值中,较小那个的整数倍,如有需要编译器会...

2019-06-19 10:52:36 1123

原创 产生core dump文件的两种方法

由于应用错误,如浮点异常、段错误,操作系统转入内核的异常处理,向对应的进程发送特定的信号(如SIGSEGV)。如果进程中没有对这些信号进行处理,就会转入默认的处理,产生coredump文件就是其中一种。coredump文件其实就是内存的映像,即进程执行时的内存的所有内容。很多系统默认情况下,产生coredump文件的开关是关闭的。下面介绍2种产生coredump文件的方法。1、通过异常信号产生...

2019-06-14 18:01:09 8826

原创 出现GDB No symbol "xxx" in current context的几种原因分析

在进行gdb调试时(包括使用core dump文件调试),经常出现GDB No symbol “xxx” in current context问题,常见的几种原因如下:1、使用gcc编译的时候未使用-g选项。或者加了-g选项,同时使用了-o选项。建议编译的时候使用-g选项的时候,同时使用-Og可以关闭编译优化(-O选项较低gcc版本不支持)。2、编译的可执行程序的调试信息格式与GDB所支持的...

2019-06-14 16:26:25 16361 3

转载 用户态进程地址空间映射

1、32位及64位地址空间分布2、proc maps文件解析查看用户进程地址映射可使用pmap命令,也可查看proc文件系统下的maps文件。下面是对proc下maps文件信息的解析。/proc/pid/maps显示进程映射了的内存区域和访问权限。对应内核中的操作集为proc_pid_maps_op,具体的导出函数为show_map。内核中进程的一段地址空间用一个vm_area_struc...

2019-06-12 18:32:27 1488

转载 oracle Redo Logs

The redo log records all changes made to data, including both uncommitted and committed changes.Oracle通过Redo来保证数据库的事务可以被重演,从而使得在故障之后,数据可以被恢复。在数据库中,Redo的功能主要通过3个组件来实现:Redo Log Buffer、LGWR后台进程和Redo Log...

2019-06-04 16:12:23 477

原创 oracle读取redo日志文件方法

1、确保oracle启动使用spfile参数文件oracle在启动时可加载两种类型的参数文件:pfile(Initialization Parameters Files)和spfile(Server Parameter Files)。本示例需要oracle启动时使用spfile参数文件。可使用show parameter spfile命令来确定是使用哪种类型的参数文件。如下图,spfile的v...

2019-06-04 13:48:50 5612

转载 oracle v$parameter表

1 vparameter表内容vparameter表内容vparameter表内容vparameter是oracle数据库的动态字典表(视图),它保存了数据库参数的设置值。2 v$parameter常见参数Cache and I/O 高速缓存和 I/O###########################################db_block_size=8192 指...

2019-06-04 10:40:41 2749

转载 PL/SQL远程连接oracle实践

由于Oracle的庞大,有时候我们需要在只安装Oracle客户端如plsql、toad等的情况下去连接远程数据库,可是没有安装Oracle就没有一切的配置文件去支持。最后终于发现一个很有效的方法,Oracle的Instant client工具包可以很好地解决这个问题,而且小而方便。1、首先到Oracle网站下载Instant Client :https://www.oracle.com/te...

2019-05-27 11:15:28 85

翻译 开源IDS/IPS-suricata框架之分组流水线模型

开源IDS/IPS-suricata框架之分组流水线模型1 分组流水线模型稍微有些过时的“auto”运行模式示例。2 初始化Suricata具有多种运行模式,每种模式都会初始化与操作关联的线程,队列和管道。这些模式通常与所选择的捕获设备(比如一个抓包接口eth0)、IDS或IPS有关。捕获设备有:pcap、pcap文件、nfqueue、ip...

2019-01-21 15:21:41 1542

空空如也

空空如也

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

TA关注的人

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