自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(93)
  • 资源 (9)
  • 收藏
  • 关注

原创 全架构Linux内核系统调用表

Linux kernel system calls for all architectures》由Marcin Juszkiewicz维护,涉及arm64、arm、x86_64、i386等40+种架构,个人认为是目前最全的系统调用表文档。

2023-08-07 21:24:34 451

原创 Linux判断文件存储移动磁盘的方法

属性指示为模拟设备(示例为虚拟机,真实设备为Removable)获取sdb4在/dev/sdb磁盘。获取块设备文件存放位置sdb4,获得sdb磁盘为usb类型,

2023-08-07 21:11:52 615

原创 Ubuntu系统adb开发调试问题记录

Ubuntu系统adb开发调试问题记录一、adb devices no permissions二、自定义adb server端口三、动态库目录四、USB抓包一、adb devices no permissionslsusb -t 设备树直观地查看设备的Bus ID和Device Num,lsusb找到对应的PID和VID编辑udev规则sudo vim /etc/udev/rules.d/51-android.rules # 添加一下一条SUBSYSTEM=="usb", ATTRS{id

2023-07-30 22:11:43 900

原创 RW-Everything的RwDrv.sys驱动调用

合法的签名驱动可以调用内核的很多方法来实现系统或硬件的控制,但对于一些情况我们无法申请签名,可以借用第三方驱动来实现,其次,这种方式是一种高风险的漏洞。

2023-07-30 21:54:05 2351

原创 网络调试助手-Win & Linux

PC桌面或嵌入式的客户端开发时常需要进行收发调试,常用的工具便是网络调试助手,支持UDP / TCP客户端、服务端的模拟。铭心网络(野人家园)的《 NetAssist网络调试助手 》,官网链接。busyluo 的Qt版变种《 mNetAssist 》,源码链接。

2023-07-23 13:58:31 2861

原创 Github搭建个人博客全攻略

登录https://MyName.github.io/即可查看发布的博文,更多知识点请上Hexo官网查阅。Github是开发者的代码仓库,一个开源和分享社区。本文前提是已注册github账号。

2023-07-22 22:50:34 3035 3

原创 Linux C 进程管道流

popen和pclose是用于创建读写进程的管道流的函数。本例简单介绍一下基本用法,从进程读取返回数据。

2023-07-13 23:25:43 411

原创 源自Boost最优雅的C++单例模式

Boost功能非常强大,在此借鉴一下其线程库中的单例源码,线程安全且优雅。

2023-07-13 21:36:20 1447

原创 Windows C++运行命令编程

Windows下编程经常需要使用批处理指令(bat或cmd),因此如何执行命令和获取返回数据是一个关键点。CreatePipe 创建匿名管道,并将句柄返回到管道的读取和写入端。

2023-07-13 20:57:17 1342

原创 bat日期时间字符串的格式化处理

字符串截取的语法为:%变量名:~开始位置,截取长度%

2023-05-25 12:55:32 1072

原创 微内核与宏内核的区别和联系

内核是计算机操作系统的核心程序,它负责整个OS功能的调控。

2023-04-28 16:16:52 2006

原创 UOS桌面版配置远程访问

【代码】UOS桌面版配置远程访问。

2023-02-09 20:54:19 2175

原创 基于Qt WebChannel的前端UI桌面混合应用

通过WebEngine和WebChannel实现前端js和Qt C++的交互,进而由Qt调用C++本地方法来处理系统或平台相关的业务功能,完成一个前后端的高度集成。Qt本身自带强大的功能,开发人员根据产品特点设计合适的业务架构,如插件化、模块化的架构,即可实现一个产品模型。

2023-01-29 03:01:55 1857

原创 基于X11协议的Linux快捷键管理

基于X11协议开发的快捷键管理可以避免热键冲突,使用Xlib开发API相对复杂,难度较大,建议按照官方推荐使用开发套件。

2023-01-25 20:58:51 1483

原创 C++ 文本编码探测CED (Compact Encoding Detection)技术

CED是一个相对可靠的国际化消息编码检测组件,可以帮助我们在国际项目中判别服务端返回的是什么编码,从而实现编码的转换,当然,现代化的软件系统编码很多都是UTF-8的,但为了兼容老系统,可以扩展此项功能。

2022-10-04 16:59:40 1154

原创 Java 终端设备消息ID-雪花算法简化版

复杂的雪花算法核心的思想是:当前时间戳和上次时间戳比较,相等的情况下序列号自增(如果序列号已达最大,则死循环直到下一个时间戳),再与时间戳、设备号组合为一个ID。利用雪花算法的关键部分,我们可以实现一个简单的消息ID生成器,适用于小型的并发环境。

2022-09-27 22:40:33 505

原创 Java 文本数据的gzip压缩

对于数据包大小要求不是太高,服务端因各种历史因素未开启HTTP的压缩的,希望节省带宽提高数据传输效率的需求可以使用数据gzip压缩;编程环境安全性要求宽松的,可以考虑引入第三方的压缩算法,如谷歌的Brotli算法,或者facebook的zstd算法等。

2022-09-27 22:22:40 3901

原创 Java XMLStreamReader解析读取XML文件

XMLStreamReader作为偏底层的接口,一般不了解xml结构的会使用其它第三方依赖来解决配置的问题,但对于学习xml的解析原理来说,或者是简单的一个读取,它还是有基础价值的。

2022-08-31 19:23:20 2765

原创 java 实例属性的反射

反射调用是java常用的手段,通过反射可以设计实现一个流程引擎或框架,也可以用作工具类。

2022-08-18 20:31:13 203

原创 LCD液晶显示屏常见类型和接口

HDMI (High Definition Multimedia Interface)高清多媒体接口,差分式并行传输,能同时传输视频和音频,其接口有Type A(常规),Type C(Mini ),Type D(Micro), Type E(Automotive)等,通常为19针引脚(Type B为29Pin).用户容易误解液晶显示屏分为LCD和LED两类,实际上广告中的LED电视为LED是指背光源为LED的液晶显示屏,广告中的LCD是指背光源为CCFL的液晶显示屏。MIPI是差分信号,具有抗干扰的特性。.

2022-08-08 20:24:49 3698

原创 OpenSSL:适用TLS与SSL协议的全功能工具包,通用加密库

OpenSSL:适用TLS与SSL协议的全功能工具包,通用加密库

2022-07-04 09:52:48 895

原创 gSOAP:基于XML的SOAP/REST的工具包

gSOAP:基于XML的SOAP/REST的工具包

2022-07-04 08:50:03 427

原创 C++ 无锁队列

atomic类型的操作是原子操作,是不可分割的,不能被中断的操作。程序代码中的一条简单赋值语句会被翻译为多条汇编指令,那么多个线程同时对某一存储单元进行修改,就有可能出现脏数据,原子操作可以避免脏数据的出现。2. 多线程读写三、总结无锁队列依靠原子和CAS操作,对队列的读写索引进行判断来入队和出队,它没有使用互斥量mutex来进行加锁,从性能上具有明显的优势,但同时编程的复杂性增加了很多,在编码时也要对内存序有简单的了解。...

2022-07-03 21:45:15 1461

原创 金融行业的密钥及加密机制

金融行业的密钥及加密机制一、 秘钥的标准体系二、秘钥实现三、常见术语四、参考文档一、 秘钥的标准体系目前金融行业的秘钥体系主要有两个:一是《Q/CUP 006.4-2015 中国银联股份有限公司企业标准- 中国银联银行卡交换系统技术规范 第4部分 数据安全传输控制规范》中<各层秘钥表>。二是《ANSI 9.17 Financial Institution Key Management》标准。二、秘钥实现基于银联标准的秘钥管理体系,分为主密钥MK、成员主密钥MMK和数据秘钥d

2022-05-28 00:30:15 1774

原创 Compiler Explorer多语言交互式汇编浏览器

Compiler Explorer多语言交互式汇编浏览器一、Compiler Explorer二、使用方法三、参考四、总结一、Compiler ExplorerCompiler Explorer 是一个交互式的编译浏览网站(也可本地部署),它使用nodejs,支持30多种编程语言,可实时浏览编译后的汇编代码。二、使用方法打开Compiler Explorer网站,进行在线编程选择编程语言,和编译器输入任意代码,即可实时浏览生成的汇编代码源代码:int fun(){ int

2022-04-08 13:07:22 6819 6

原创 std::lock_guard的原理和应用

std::lock_guard的原理和应用一、lock_guard二、使用示例三、原理分析四、总结一、lock_guardlock_guard是一种在作用域内控制可锁对象所有权的类型。(原文:An object of type lock_guard controls the ownership of a lockable object within a scope. )lock_guard具有两种构造方法:lock_guard(mutex& m)lock_guard(mutex&am

2022-04-07 23:29:52 28478 1

原创 std::mutex互斥量的应用

std::mutex互斥量的应用一、mutex互斥量二、使用示例三、总结一、mutex互斥量互斥量是在多线程并发中避免数据竞争的一种锁。它有三个常用函数:lock() 加锁unlock() 解锁try_lock() 尝试加锁(不阻塞)二、使用示例#include <iostream>#include <mutex>#include <vector>#include <string>#include <ctime>#

2022-04-05 12:35:56 931

原创 npm全局模式路径配置

npm全局模式路径配置一、npm二、全局配置三、prefix配置四、参考一、npmnpm是世界最大的包管理器。(原话: npm is the world’s largest software registry.)二、全局配置全局(global)模式操作下,软件包会安装在prefix 目录下,而不是当前工作目录。具体目录如下:包路径 {prefix}/lib/node_modulesbin执行文件路径 {prefix}/binman手册 {prefix}/share/man三、pr

2022-04-03 23:23:59 3832

原创 CH340/CH341 Linux驱动编译

CH340/CH341 Linux驱动编译一、CH340/CH341二、编译三、报错处理四、总结一、CH340/CH341CH340/CH341 USB转串口驱动程序,下载地址:http://www.wch.cn/downloads/CH341SER_LINUX_ZIP.html二、编译unzip CH341SER_LINUX.ZIPcd CH341SER_LINUXmake三、报错处理error: unknown type name ‘wait_queue_t’wait_queu

2022-02-26 15:36:36 1920

原创 极简Linux驱动入门

极简Linux驱动入门一、编译内核二、编写驱动三、编译使用一、编译内核# 下载内核源码wget https://mirrors.edge.kernel.org/pub/linux/kernel/v4.x/linux-4.1.15.tar.gz --no-check-certificate# 解压tar xvf linux-4.1.15.tar.gzcd linux-4.1.15# 配置并保存退出make menuconfig# 编译make二、编写驱动实现init和exit两个

2022-02-26 02:01:45 491

原创 Source Insight设置头文件路径

Source Insight设置头文件路径一、Source Insight二、设置步骤1. 配置全局项目2. 引入工程项目三、总结一、Source Insight嵌入式软件领域用得非常多的一款代码浏览和编辑器,但美中不足的是只有windows版本。同样的,在写代码时的自动提示功能也需要先设置头文件。二、设置步骤1. 配置全局项目Project > Open Project > 选择BaseOptions > Preferences > Symbol Looku

2022-02-24 16:45:06 2933

原创 Ubuntu安装GCC 3.4

Ubuntu安装GCC 3.4一、背景二、安装三、总结一、背景因最近学习hit-os编译linux 0.11版本内核,需要使用到gcc 3.4,故此记录。二、安装# 下载deb包wget http://old-releases.ubuntu.com/ubuntu/pool/universe/g/gcc-3.4/cpp-3.4_3.4.6-6ubuntu3_amd64.debwget http://old-releases.ubuntu.com/ubuntu/pool/universe/g/gc

2022-02-24 16:15:37 1825

原创 java 自定义注解

java 自定义注解一、注解二、示例1. @interface定义注解2. getAnnotation获取注解,自定义功能三、总结一、注解java注解可以理解为一种的程序特性的标注,该标注代表某一种功能,可在运行时反射来动态实现功能映射,也有作用于源码和字节码的。其中,用来标记自定义注解的称为元注解(meta-annotation),有Target、Retention、Documented和Inherited。二、示例1. @interface定义注解import java.lang.ann

2022-02-03 03:18:36 1365

原创 git deamon 一个简单的git服务器

A 机器开启守护进程,使用 git 协议公开当前目录.下的仓库:git daemon --verbose --export-all --base-path=.B 机器克隆 A 机器的仓库:git clone git://$hostip_a/respostory_name其中 $hostip_a 为 A 机器的 IP, respostory_name 为 --base-path 指定目录下的仓库名称。作者:阿土哥链接:https://www.zhihu.com/question/54672976/ans

2022-01-22 08:41:46 1817

原创 C# HTML转图片

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档C# HTML转换生成图片前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤

2022-01-22 00:19:48 1152

原创 C# 委托监控属性变量

C# 委托监控属性变量一、委托二、示例三、参考四、总结一、委托C# 的委托类似函数指针,可以用于定义回调方法。一个委托可以代理多个被调的方法。二、示例using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace Demo{ class VChange { // 构造方法 public VChange()

2022-01-21 22:54:44 1478

原创 VirtualBox 安装Android on X86

VirtualBox 安装Android on X86Android on X86一、安装步骤二、配置图形界面Android on X86Android-x86 (https://www.android-x86.org/)开源项目,使Android运行在PC上。本次使用环境为:android-x86_64-9.0-r2.iso 下载链接VirtualBox-6.1.30-148432-Win.exe 下载链接一、安装步骤安装VirtualBox打开VirtualBox,选择“新建”

2022-01-10 23:19:54 4740 2

原创 金融校验九要素、十二要素

金融机构校验客户的基本要素信息一、要素二、参考一、要素根据《金融机构客户身份识别和客户身份资料及交易记录保存管理办法》第三十三条:自然人客户的“身份基本信息”包括客户的姓名、性别、国籍、职业、住所地或者工作单位地址、联系方式,身份证件或者身份证明文件的种类、号码和有效期限。客户的住所地与经常居住地不一致的,登记客户的经常居住地。法人、其他组织和个体工商户客户的“身份基本信息”包括客户的名称、住所、经营范围、组织机构代码、税务登记证号码;可证明该客户依法设立或者可依法开展经营、社会活动的执照

2022-01-06 22:06:19 3199

原创 个人学习网站指南

我的学习网站一、书籍二、视频三、教程四、实用五、工具(个人平时使用到的一些网站,以免费为主,主要是为了自己以后需要用到能快速导航,持续更新)一、书籍微信读书 - 计算机榜二、视频电巢-电子工程师在线学习网站三、教程四、实用微软.NET源码在线浏览五、工具Regex101 - 正则表达式创建、测试和调试 ...

2022-01-01 23:17:58 290

原创 正则表达式校验交易金额

正则表达式校验交易金额一、正则表达式二、分析三、推荐一、正则表达式使用正则匹配大于0的正整数、带1-2位小数的正浮点数:(?!(^[0.]*$))((^[1-9]\d*$)|(^[0-9]+.\d{1,2}$))二、分析(?!(^[0.]*$)(?!exp1)exp2 正向否定查找 表示从不匹配exp1的字符串开始查找exp2(^[1-9]\d*$)匹配一位1-9开头的,后面跟任意位0-9的正整数(^[0-9]+.\d{1,2}$)匹配有小数点,且整数位有至少一

2021-12-28 22:45:09 1548

百富非接触读卡器R50用户手册

百富非接触读卡器R50

2022-06-26

Thread synchronization in Linux and Windows systems

Linux 和 Windows 线程同步的差别和使用的函数,含代码示例

2021-05-20

PBOC3.0 发布版 EMV国家标准 中文

PBOC3.0 发布版 EMV国家标准 中文

2021-03-10

AC6936D 耳机原理图

AC6936D的TWS耳机标准原理图V1.2

2021-03-04

ISO7816 APDU标准 英文版

ISO/IEC 7816 国际标准 英文

2021-03-01

EMVCo 4.3 英文版本

EMV Book 4.3版本,IC卡国际标准

2021-03-01

AC6936D和AC6939B

杰理AC6936D和AC6939B原理图和规格书 AC6936D Datasheet V1.1.pdf AC6936D 立体声蓝牙耳机标准原理图V1.2.pdf AC6939B Datasheet V1.2.pdf AC6939B TWS蓝牙耳机标准原理图V2.2.pdf

2021-03-01

cJSON的C++11版本

cJSON的C++11实现,Visual Studio Code版本, G++编译

2021-02-28

TWS01MB-V01.zip

TWS01MB-V01蓝牙耳机主板 原理图,PCB文件源,原理图PDF (注:版本PADS VX.2) 文件基于洛达AB1526 芯片设计,4 层板 PCB尺寸:16.3*13.16*0.8mm

2021-02-28

空空如也

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

TA关注的人

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