自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

m

m

  • 博客(48)
  • 收藏
  • 关注

原创 MPI并行调试工具mpigdb介绍

利用gdb10.1中引入的多进程支持,实现一个gdb连接到多个gdbserver,并通过gdb的python接口新增自定义gdb命令,如mpib命令为多进程breakpoint,mpic命令是多进程continue,允许用户像操作多线程一样操作多进程调试。于是,大部分人转而使用串行调试工具如ssh+gdb attach或者xterm+gdb,但因为它们串行调试的本质在并行程序的环境中存在调试效率不高的问题。根据作者的测试,在不对程序造成较大的性能损失影响的前提下,最多可以同时调试128个进程。

2024-03-28 15:36:39 270

原创 国家级超算中心 已部署超算及架构一览

FT-2000+(64核)/FT-3000(128核)申威26010+(4主+256从)申威26010(4主+256从)申威1600(16核)海光7185(32核)

2024-03-27 10:37:20 96

原创 支持预览本地图片的Markdown编辑器

neutriNote 试了很多款,暂时只有这一款支持。

2024-01-27 14:39:13 108

原创 Clion 2019 搭配 Visual C++ Build Tools 搭建MSVC开发环境

Clion 2019 无法识别 Visual C++ Build Tools 的问题

2023-11-07 12:43:30 912

原创 基于ntchat的微信群聊同步机器人

微信群有500人上限的限制,建立多个群的话又有信息无法互通的不便,此机器人通过自动将消息转发到同一个同步组内的所有群,消除这一不便性,间接达成扩大群成员数的目的。

2023-09-15 22:59:07 895 3

原创 Windows NUMA编程实践 – 处理器组、组亲和性、处理器亲和性及版本变化

1. 自Win7引入处理器组开始,原有的不识别group的函数,参数和返回值都变成组内编号/信息。2. 自Win10 20348 由于node可以关联多个group,引入“主组”之后,原有的node相关不支持多个group的函数,参数和返回值都变成主组信息。

2023-09-02 11:41:37 1319

原创 avahi_entry_group_add_record的用法

avahi_entry_group_add_record 在头文件注释及官方文档中没有任何的说明,如果想使用该接口发送自定义的消息会一点头疼,这里通过分析avahi源码来介绍一下使用方法,下面的内容需要对mDNS以及DNS-SD协议有一定程度的了解。

2023-06-14 16:07:16 686 2

原创 在windows下使用cmake msvc生成64位程序

【代码】在windows下使用cmake msvc生成64位程序。

2023-06-02 15:13:46 1135

原创 DPDK 启用中断收包

DPDK默认的轮询模式在没有接收到报文的空载状态下也会占用100%的CPU,非常浪费电力。通过在低速率和空载状态下启用中断收包,在高速率下使用轮询收包便能兼顾性能与节能的目标。以下代码基于DPDK 21.11.3的示例代码,examples/l3fwd-power/main.c,该程序提供了多种CPU、网卡节能的工作模式,以及动态CPU频率调节等节能手段。这里仅关注其中处理中断的部分(指定--legacy运行的模式),并将代码简化为网卡上一个端口一个接收队列的处理。

2023-01-17 11:26:10 477

原创 使用rpcapd(libpcap)进行Wireshark远程抓包

看了不少其他人写的博客文章,在介绍下载安装rpcapd时都是推荐到WinPcap网站上下载,但是WinPcap自2018年后就已经没有更新过了,我们应该到libpcap官网(rpcapd不依赖于libpcap.so,可以独立运行。)处下载最新的代码。

2022-10-11 11:36:26 937

原创 使用FFmpeg来批量生成单图+单音频的一图流视频

需求因为时不时会在B站上分享一些游戏BGM合集,拿到多个音频文件之后要先选一张好看的图片,然后逐个音频地与这张图片合成一个静态的视频,这个过程用视频编辑软件来操作的话非常地重复、费事,故考虑使用FFmpeg来转换合成并实现批量操作。...

2022-07-22 22:47:28 2668

原创 Linux下使用 Virtualbox 虚拟串口

环境是Host和Guest都为Linux。按照官方文档,Raw File模式只允许Guest端写入,Host端是只读的,TCP/IP模式配置起来较为麻烦,所以端口模式我们选择“主机管道”。在Linux环境下,主机管道模式默认创建的是一个Unix Socket文件,操作起来不方便,于是我们需要借助一款工具socat(这里真心怀疑是Oracle故意给Linux用户添堵),它可以将两个地址关联起来,对其中一个的读写操作会传送给另一个地址。sudo apt-get install socatHost端

2022-05-28 11:50:46 708

原创 从汇编代码来看C++的引用

main.cpp#include <iostream>int var1 = 0;int main() { int &var2 = var1; var2 = 20; std::cout << var1 << std::endl; return 0;}$ gcc -S main.cppmain.s首先,代码是在64位平台上编译的。第30行处可以看到,编译器在栈中为var2分配了一个局部变量的空间,长度为8(64

2022-05-27 13:19:39 143

原创 Intel x86/x64 编程手册-开发文档

在官网下述地址可以下载:Technical Library查找以下标题:Intel® 64 and IA-32 Architectures Software Developer’s Manual Combined Volumes: 1, 2A, 2B, 2C, 2D, 3A, 3B, 3C, 3D, and 4这个是合集版,当然你也可以下载分卷版...

2022-05-06 12:00:37 1258

原创 MSVC (Visual C++) 对于ISO C99, C11, C17 等语言标准的支持情况

C99Visual Studio 2013首次引入C99的语言特性和库函数的支持,但只支持有限的语言特性:_BoolCompound literals.Designated initializers.Mixing declarations with code.Visual Studio 2015实现了基本所有的库函数支持参考:C99 library support in Visual Studio 2013 - C++ Team BlogVisual C++ What’s

2022-03-18 22:01:48 1896

原创 制作windows便携式python运行环境包 和 pip的Unable to create process using问题

项目中需要一个免安装的便携式的python运行环境包,迁移到其他计算机可以直接运行,记录下制作过程中遇到的问题。一、正常安装python,安装时不要勾选pre compile二、使用pip安装好所有需要的运行库三、修改Scripts目录下的文件 运行pip时的Unable to create process using问题: 这个问题如果仔细看的话,会发现报错信息打印出来的路径不对,依然是安装时的路径(安装时的路径是C:\Program Files\python,之后...

2022-02-02 18:26:41 1293

原创 解决ubuntu 遇到 no service found for - “org.qt-project.qt.mediaplayer“

这个问题是在使用youdao-dict时遇到的首先打开QT调试开关exportQT_DEBUG_PLUGINS=1再次运行得到以下输出:QFactoryLoader::QFactoryLoader() checking directory path "/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/mediaservice" ...QFactoryLoader::QFactoryLoader() checking directory pa.

2021-12-12 17:46:49 3139

原创 使用BOOST_PP库遍历C语言可变参数宏variadic

1. 前言C99和C++11规范中引入了可变参数宏(variadic macro)的概念,允许在宏函数中使用可变的参数,但是只提供了简单的展开功能。如果我们需要对每一个参数分别做不同的处理时,就需要对它们进行遍历,这时可以使用boost库中包含的preprocessor库(简称PP库)进行处理。preprocessor库中都是一些头文件,只需要包含后就可以使用了,不需要进行特别的编译和链接处理。2. 数据类型PP库中对序列化的数据定义了下面几种的数据类型:#define Array (3, (a,

2021-12-12 13:34:11 1604

原创 Linux 修改网卡名称

部署Docker时需要修改网卡的名称,第一个反应是看看ifconfig的man手册中有没有相关功能的介绍,发现推荐使用ip命令(这个Note貌似只有在Centos中才会有)。经过查阅ip-link的man手册页,得出以下使用方法:ip link set eth0 down #等同于ifconfig eth0 downip link seteth0 name eth1 #将eth0改名为eth1ip li...

2021-12-01 20:36:18 1115

原创 使用LightPcapNg输出pcapng报文文件

下载LightPcapNgGitHub - hyh19962008/LightPcapNg: PcapNg read, write and manipulation API.编译cd srcmake编译后可以在目录下找到liblight_pcapng.so和liblight_pcapng.a两个文件pcapng文件格式1. 文件整体结构pcapng文件是由一个一个的Block组成的:2. Block结构每个Block有四个部分,其中Block Typ.

2021-10-17 01:08:24 367

原创 C语言使用libpcap输出报文到pcap文件

一、pcap文件格式简介pcap文件格式由一个文件头,加上若干个分组header + 分组数据组成。pcap整体文件结构:文件头:分组header:二、libpcap库函数介绍为了输出pcap文件,将使用到以下的函数:// 创建一个 pcap_t 句柄用于写入文件// @param linktype 参见 http://www.tcpdump.org/linktypes.html// @param snaplen 指定捕获(最大)长度p...

2021-08-26 21:46:19 2013

原创 Lua程序设计第四版 英文

programming in lua 4th edition这居然是伊拉克一个政府部门的网站-_-""Programming_in_Lua

2021-03-17 09:51:28 375

原创 WordPress 中允许使用自定义的HTML标签属性

最近项目中在Wordpress后台编辑器中添加了一种新的编辑器区块用于保存图片的链接,保存到数据库中的内容大概长这个样子:<!-- wp:gamux/slide-url --><slide>@httpLink</slide><!-- /wp:gamux/slide-url -->但是WP在将文章内容写入到数据库前会执行一系列的安全检查,过滤掉不合法的字符和HTML标签,于是实际写入到数据库的内容会变成:<!-- wp:gamux/slide-

2021-01-28 10:54:35 488

原创 Wordpress 在插件或主题中禁用文章版本历史功能

WordPress可以通过往wp-config.php中添加以下语句禁用文章的版本历史:define('WP_POST_REVISIONS', false); //禁用历史修订版本但是如果是主题或者插件的开发者的话,使用这一语句会产生一个提醒:Notice: Constant WP_POST_REVISIONS already defined一、使用插件可以安装一款插件disable-post-revision来实现这一功能二、添加到主题在functions.php中添加// 禁用版本

2021-01-05 22:04:06 307

原创 WP 3.3 解决Deprecated: contextual_help 移除WordPress后台“显示选项”和“帮助”选项卡

网上流行的移除“帮助”选项卡的代码如下://移除Wordpress后台“显示选项”和“帮助”选项卡function remove_screen_options(){ return false;}add_filter(‘screen_options_show_screen’, ‘remove_screen_options’);add_filter( ‘contextual_help’, ‘wp_remove_help’, 999, 3 );function wp_remove_help($old_h

2021-01-05 21:51:36 356

原创 安装pecl_http 时gnutls.h: No such file or directory 的解决方案

使用PECL 安装pecl_http时报错,说找不到 gnutls/gnutls.h,尝试:sudo apt install libgnutls28-dev

2020-12-13 12:52:30 425

原创 Wordpress REST API nginx访问/wp-json/ 返回404

首先,请确认你已经做了以下事情:WordPress Rest API访问失败404(访问wp-json)然后还是无法访问。-_-我的情况是,nginx根目录是/var/www/html,wordpress目录是/var/www/html/wordpress访问的时候通过http://localhost/wordpress查看了一下nginx的官方文档中关于wp的部分,发现下面这一段:这里说,如果wp是非nginx的根目录时需要添加额外的设置。那么,为了不加这一串,我们把ngi

2020-10-08 10:04:08 1728

原创 使用enscript和ghostscript 自己生成RFC文档的PDF版本

RFC(Request For Comments)文档是许多互联网协议的标准文档,对于学习计算机网络的学生和通信网络行业从业者来说是一个重要的资料来源。任何人都可以可以从[RFC Editor(https://www.rfc-editor.org/)方便地获取到RFC文档。RFC文档是由人编写的,不可避免地会出现一些笔误的情况,在RFC Editor站点上会不定期地刊登出这些勘正信息(Errata),但是并不提供订正后的文本。这点做得就不如法律的修正案,后者在立法机关公布修正案的同时会发布修订后的全文。

2020-09-17 09:50:01 702

原创 在windows 编译Gnu Global

编译平台是msys2 + windows server 2012 R2,使用的是官方的6.6.3版本。Mingw64报错信息bt_open.c: In function 'tmp':bt_open.c:405:2: error: unknown type name 'sigset_t'; did you mean '_sigset_t'? 405 | sigset_t set, oset;Mingw32报错信息./.libs/lt-gtags-cscope.c: In function '

2020-08-16 11:01:10 1177

原创 Ubuntu 切换工作区快捷键失效

首先安装 Compiz Config Settings Managersudo apt-get install compizconfig-settings-manager在“桌面”板块下勾选Desktop Wall 以启用点开Desktop Wall进入详细选项,切换到binding绑定选项卡,设置快捷键

2020-07-27 19:57:50 322

原创 计算机网络中的线端阻塞的概念

# 线端阻塞线端阻塞,也有人根据英文 head of line blocking 直译为队列头部阻塞,指由于队头成员的阻塞引起的整个队列的阻塞,并且队头成员与队列后续的成员(至少一个)有不同的发送方向,此时其他发送方向也许是空闲的。看一个例子:此时队列中有两种数据,Type1设备只能处理数据1,Type2设备只能处理数据2,由于Type2设备已经满负载,不再处理队列中的数据,于是整个队列产生阻塞,此时即便Type1设备尚有剩余的处理能力也无法处理队列中的数据1,此即线端阻塞。# 队列拥塞

2020-07-26 10:47:09 791

原创 使用Mozilla Thunderbird 创建ics日历文件

# 1. 启动Thunderbird,选择日历选项创建新的日历# 2. 也可以切换到日历选项卡后新建新的日历# 3. 新建一个事件,编辑完成后保存并关闭# 4. 点击菜单按钮,事件和任务,导出# 5. 导出成功后就可以查看ics文件了# 6. 之后便可以在google日历或outlook日历中导入,也可以上传到github通过raw链接生成订阅...

2020-07-21 21:35:07 1905

原创 通过resolvconf使resolv.conf不被覆写

/etc/resolv.conf 中可以配置域名解析的信息,但是每次修改重启后都会被覆写,此处通过resolvconf命令关闭自动更新:`resolvconf --disable-updates``resolvconf-d wl3sp0`第二条命令中的wl3sp0为使用ifconfig查看得到的你需要修改的网卡,有线网一般为eth0...

2020-07-16 23:11:02 315

原创 WizHtmlEditor 编辑后的mht文档 无法在chrome firefox中打开

WizHtmlEditor 是网上能找到的少有的能够直接编辑mht文档的所见即所得html编辑器,但是经过它修改后的文档只有IE可以正常打开,在chrome firefox等浏览器中则无法正常打开,会显示如下的结果:解决办法使用任意编辑器打开mht文档,删除图片中选中的部分即可正常打开。附上:个人用C语言写的自动删除工具...

2020-06-28 20:55:05 574

原创 PHP 命名空间详解

文章目录一、概述二、定义命名空间A. 单个命名空间B. 多个命名空间三、使用命名空间A. 一般B. 别名/导入C. 解析优先级四、PHP动态语言特性和命名空间一、概述PHP的官方文档关于这命名空间讲得乱七八糟的,于是重新整理了一下。从广义上来说,命名空间是一种封装事物的方法,PHP 命名空间提供了一种将相关的类、函数和常量组合到一起,并与其他的同类隔离的途径。在PHP中,命名空间用来解决用...

2020-04-04 17:26:18 319

翻译 MySQL版本号6和7去哪了?

MySQL 在2017年发布了新的版本8.0,但是在此之前的上一个版本是5.7,那么中间的6和7去哪了呢?早在2008年,Sun收购MySQL AB以前,公司内部已经在进行着版本号6的开发工作了(5.0在2005年发布)。然而,版本6的MySQL制定的目标和计划过于激进,步子迈得有点儿大,随着收购的顺利完成,项目也被砍掉了。至于版本号7,则是用在了MySQL Cluster上。由于新版的My...

2020-03-28 18:40:07 4747 1

原创 修改word文档中已有的批注者名称

前言word中可以通过修改用户的信息实现新建的批注者显示不同的名称,但是对于文档中已有的批注则无法进行修改,在vba中通过word.documents(1).comments(1).contact 属性允许读取批注者名称,但是不允许修改。因此,我们通过修改word源文件的形式进行修改。docx文档的结构以下工作的基础是docx格式的文档,因为doc格式是二进制的不能直接读取。关于docx文...

2019-04-21 11:49:42 17454 25

原创 FFMpeg WASAPI can't activate audio endpoint错误的处理

最近在Win Server 2012R2服务器上部署的一个项目需要使用FFMpeg处理音频文件,但是调用ffplay.exe时,经常出现WASAPI can't activate audio endpoint的错误。分析是,服务器上没有提供声卡,可以通过安装Virtual Audio Cable等虚拟声卡来解决该问题。...

2019-03-06 13:32:11 1041

原创 通过替换音效文件,实现在安卓手机上使用wp/nokia/wm10按键键盘声音

wp/wm10手机的上的输入法“哒哒哒”的音效非常棒,换了安卓手机后google输入法的按键音就简直太糟糕了,于是我们可以通过提取wp的键盘音效替换安卓的音效来实现在安卓手机上使用wp的键盘音效。1.提取wp/wm10的音效手机先要越狱,一般使用Interrop Tool。越狱之后勾选full filesystem access 就可以在电脑上访问到手机上的系统文件了,然后定位到以下目录:此...

2019-01-02 09:59:54 901 3

原创 Xperia XZ (F8332) 刷机和ROOT过程中遇到的一些问题的解答

刷机过程中遇到额不少问题,折腾了不少时间,写下来给遇到同样问题的人参考:1.已经选择正确目录,Flashtool识别不到.ftf文件请换一个Flashtool版本试试2.Flashtool一直卡在Syncing Device from Github请换一个Flashtool版本试试看一下输出信息最后里是不是有类似“Proxy Detected”的字样,有的话说明你的系统中存在代理设置,...

2018-11-23 17:34:58 5387 1

空空如也

空空如也

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

TA关注的人

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