自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 嵌入式linux设备内存泄露排查思路

文章摘要: 本文介绍快速定位Linux系统内存泄漏的方法。首先通过free -h和top命令观察系统内存和进程内存(RES/VIRT字段)是否持续增长。其次区分内核态或用户态泄漏:内核态通过/proc/meminfo对比Slab和MemAvailable变化,使用/proc/slabinfo分析活跃对象增长;用户态通过ps/top找出RES持续增长的进程,分析其/proc/[pid]/status和内存映射文件。最后介绍了常见Slab缓存类型及关键监控指标,帮助开发者快速定位内存泄漏源。

2026-04-13 17:37:32 273

原创 设备树是如何被使用的?

设备树的核心目标是实现。在之前的博文中,。本文将深入剖析设备树(Device Tree)在Linux内核中的完整运行时生命周期,涵盖从引导加载程序传递、内核早期解析、设备节点实例化,到最终与设备驱动匹配并完成硬件初始化的全流程。通过理解设备树如何从静态描述文件转化为动态的系统硬件拓扑,我们才能够更有效地进行驱动开发、系统移植和调试。

2026-03-18 17:59:38 271

原创 Buildroot:构建嵌入式Linux系统的自动化框架

Buildroot:嵌入式Linux系统的自动化构建工具 Buildroot是一个用于快速构建嵌入式Linux系统的工具,通过自动化流程生成包含Bootloader、内核和根文件系统的完整镜像。其核心特点包括自动化配置、增量编译、交叉编译支持和高集成度,适合资源受限的嵌入式设备。典型工作流程包括配置目标系统(如树莓派)、下载编译源码及生成镜像。用户可通过menuconfig定制软件包,或扩展功能。

2026-03-06 16:17:30 284

原创 嵌入式Linux启动流程

摘要:系统启动流程包括多个关键步骤:U-Boot首先加载uImage内核映像和设备树文件(dtb)到内存指定地址,然后跳转执行内核并传递dtb地址。内核初始化硬件后,挂载initrd临时根文件系统,执行脚本加载必要驱动,最终切换到真实根文件系统并启动用户空间的init程序,完成整个启动过程。该流程实现了从底层硬件初始化到上层用户空间的完整系统引导。

2026-03-04 16:03:24 26

原创 Linux TTY 设备完全解析

本文深入解析Linux终端技术,从历史渊源到现代实现,帮助开发者理解控制台、终端模拟器和伪终端之间的区别与联系。

2026-03-04 12:06:55 393

原创 Shell脚本进阶实用指南

本文总结了Shell脚本编程中的关键注意事项和实用技巧:1. 空格的使用 2. Shebang必须使用解释器的绝对路径。重点介绍了命令输出的获取方法、命令执行状态的检查以及高效的字符串处理技巧。文章通过具体示例展示了如何提取文件路径信息、处理URL和批量修改文件扩展名等实用场景,并强调了子Shell环境隔离和及时保存状态码等易错点。

2026-01-07 16:12:56 834

原创 Linux网桥及其配置

Linux网桥是Linux内核提供的虚拟网络交换机,可在数据链路层将多个LAN互联为单一逻辑局域网,实现透明高效的网络融合。其核心功能包括:动态学习MAC地址表并智能转发数据帧,支持生成树协议防止环路,以及802.1Q VLAN隔离。通过brctl命令可创建网桥、添加接口、配置IP地址及启用STP等。Linux网桥使不同网络设备如同连接在同一物理交换机上,无需修改配置即可直接通信,有效解决了异构网络互通问题,是虚拟化和容器网络的关键组件。

2026-01-04 16:06:33 1109

原创 Would you like Visual Studio Code to periodically run “git fetch“

网络请求频繁:每3分钟一次网络请求,网络不好时可能影响性能,移动办公时消耗流量。实时同步远程仓库的最新状态:分支列表自动更新(能看到同事新创建的分支),及时知道远程是否有新提交;自动化提醒:在状态栏看到 “落后” 或 “领先” 的提示,提交前就知道是否需要先拉取。避免合并冲突:提前了解远程变更,可以及时拉取更新,减少推送时因落后导致的拒绝。提高协作效率:团队协作时,能立即知道别人的进度,分支切换时信息是最新的。没想就点了OK,然后发现它自动同步了所有分支的最新修改。不必要的开销:大仓库可能消耗较多资源。

2026-01-04 15:04:04 226

原创 设备树超强讲解(含大量示例)

Linux设备树摘要: 设备树(Device Tree)是嵌入式Linux中描述硬件配置的数据结构,将硬件描述与内核代码分离。其核心结构由节点和属性组成:节点描述硬件设备或逻辑组件,属性定义特性配置。节点分为根节点、设备节点、系统描述节点等类型,通过compatible属性与驱动匹配。

2025-12-23 18:21:50 891

原创 数组的使用小技巧

数组其实就是一个表格,可以想象成一个excel表格,那么其实excel表格可以呈现的东西都可以通过数组进行实现。所有有一定规律的内容,都可以通过整合形成表格,进而通过数组进行代码实现。如果整合形成的数据都是一个类型的,就可以直接创建一个这个类型的数组;例如在进行多条件判断的时候,就可以通过将各种情况整理到数组中,再通过遍历进行判断,不过要注意的是,这种方法更适合在资源比较多的情况下使用,资源较少时遍历可能并不是一个好的选择,不过这种方法在代码可读性上有很大的优势。

2025-02-12 11:13:02 146

原创 Robotframework的python版本

robotframework的python版本

2023-02-27 16:44:56 532 2

原创 VScode使用总结

VScode使用期间的用法总结记录

2023-01-05 15:01:43 488

原创 git使用方法小记录

git的使用记录,因为用一次就重新查一次太麻烦了

2022-12-31 23:48:44 223

原创 VScode使用remote ssh远程连接无法保存文件,vscode-remote://ssh-remote

VScode远程连接Ubuntu,无法保存文件解决方法

2022-12-30 11:57:31 6683

原创 《C与指针》-- 第一章阅读笔记

《C与指针》阅读笔记系列

2022-11-13 10:27:37 290

原创 Maxon电机使用记录

本文是我在使用Maxon电机的一些记录,连接方式使用USB,直接用的Maxon提供的library。

2022-06-07 03:13:03 5118 5

原创 资料总结 -Qt界面编程实习有用资料汇总

LinuxQtQt状态机C++C++ 单例模式总结与剖析

2022-03-25 19:08:06 924

原创 【牛客题库整理】NC10 大数乘法

题目我的代码

2022-02-27 01:43:04 722

原创 Linux环境编程项目精讲 | 学习笔记

linux环境编程项目精讲学习笔记

2022-02-26 20:02:27 725 2

原创 【牛客题库整理】NC1 大数加法

题目题解C/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * 计算两个数之和 * @param s string字符串 表示第一个整数 * @param t string字符串 表示第二个整数 * @return string字符串 */char* solve(char* s, char* t ) { // write code here int sLen = strlen(s); int tLen = strlen(t);

2022-02-19 03:56:23 398

原创 STM32的RTC时间读数不变/读不动RTC

做了一个根据时间变化的变量,一开始还是好好的,后来整理完程序过了几个星期发现这个变量根本不随时间变化,我一直以为是变量类型的问题,因为用到了logf,结果放了breakpoint之后发现时间里的小时,分钟,秒都不变。查了半天才明白,原来是因为整理代码的时候把不用的getDate删了造成的。裂开不用getDate的话,日历会一直被getTime锁住。具体可以参考这位大佬的文章https://mp.weixin.qq.com/s/b8WwXqD5LYThi7HSTXGzTQ另外,一定要先getTime

2020-11-04 23:30:15 3322

原创 SC16IS750在STM32的应用

SC16IS750是NXP家的转换芯片,可以将UART转换成I2C/SPI。我们这里只说一下转I2C。它的library在网上还是挺好找的,但是是arduino的码,我整个程序都是C编的所以有些难受,想找写arduino码的哥哥要个STM的码,人家找我要购买记录。。。好吧,我自己翻译嘛,也没什么大不了的,差的也不多。其实就复制粘贴用STM的函数翻译一下就好。但是要注意两点:所有registre地址都要向左移3位,reg_add<<3,datasheet里说是要留下Channel的位置

2020-11-03 00:11:13 1684 9

原创 BME680及bsec在STM32上的应用

最近使用Bosch家BME680的过程中,发现这个传感器跟个祖宗一样难伺候。虽然我自己也还是个菜鸡,但是想在这里记录一下我个人使用这个传感器的过程和经验,希望能帮助有需要的人少走一些弯路,如果有大佬看到也希望能得到一番指点。

2020-10-31 07:51:51 2828 1

【PDF处理技术】基于文本定位的批量电子签名系统:自动化添加签章的位置控制与多文件处理方案设计

内容概要:本文介绍了“PDF定位签名批量处理工具”的使用方法,该工具可在文本型PDF文件中自动查找指定文字并批量添加签名图片,支持智能定位、灵活配置签名位置与尺寸、多页面处理及配置保存与导入功能,同时提供详细的处理日志记录。使用流程包括设置目标文本、选择签名图片、调整位置偏移、指定处理页面范围、设置输入输出路径,并支持配置的保存、导入与重置,便于重复使用和高效操作。; 适合人群:需要对大量PDF文件进行电子签名处理的办公人员、行政人员、财务人员及相关业务办理人员;具备基本计算机操作能力的用户均可使用。; 使用场景及目标:①在合同、报表、审批单等PDF文档中批量插入签名,提升工作效率;②通过配置保存实现标准化签名流程,确保格式统一;③避免手动逐份签名导致的时间浪费与操作失误; 阅读建议:首次使用时建议先备份原文件并通过少量测试文件调试签名位置与参数,确认无误后再批量处理;若签名图片遮挡文字,可提前使用去背景工具优化图片,确保最终效果清晰专业。

2025-12-29

PDF定位签名批量处理工具是一款用于在PDF文件中自动寻找定位文字并添加签名图片的应用程序,支持批量处理多个PDF文件 (目前仅支持文本型PDF,暂不支持图片型PDF)

- 批量处理:支持一次性处理多个PDF文件。 - 智能定位:基于目标文本自动定位签名位置。 - 灵活配置:可自定义签名位置、大小、偏移量等参数。 - 多页面支持:可选择在第一页、全部页或指定页添加签名。 - 配置保存:支持保存和导入配置,方便重复使用。 - 日志记录:详细记录处理过程和结果。

2025-12-29

空空如也

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

TA关注的人

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