- 博客(123)
- 收藏
- 关注
原创 【Linux进程创建&终止】Linux学习第二十弹——为什么 fork 前要把数据段改成只读?写时拷贝原理揭秘
本文系统讲解Linux进程控制,重点剖析fork创建机制:通过写时拷贝(COW)实现父子进程共享代码与数据,仅在写入时才复制物理内存,提升效率。详细说明进程创建流程(内核结构先行、再加载代码)、fork的两种应用场景(继承代码或执行新程序),并解释fork失败原因及退出码设计逻辑。同时深入分析进程终止过程,强调先释放资源、后保留PCB以支持僵尸进程处理,明确进程退出码0代表成功,非零表示不同错误类型,体现“成功唯一,失败多样”的设计哲学。
2026-10-31 22:30:11
14
原创 飞牛 NAS 上的 Hermes Agent 接入微信后不回复?从模型配置、Gateway 到公网访问逐项排查
飞牛 NAS 上部署 Hermes 后,微信扫码成功却不回复,问题可能出在模型、Gateway、Weixin 登录凭据或用户配对策略。本文按消息链路逐项排查,并解释为什么微信长轮询通常不需要公网端口,以及如何安全访问独立的 Hermes Dashboard。
2026-10-31 22:17:00
13
原创 【Linux进程篇】Linux学习第十九弹——fork 后地址一样,变量值为何不同?一文讲透 Linux 虚拟地址空间
本文通过实验揭示进程地址空间的本质:图中所示并非物理内存,而是虚拟地址空间。程序中看到的地址均为虚拟地址,由操作系统统一管理。父子进程虽共享相同虚拟地址(如&g_val),但经映射后指向不同物理内存,实现数据隔离。这解释了为何同一地址在不同进程中可存储不同值,也说明指针始终指向虚拟地址,物理地址由系统隐藏并动态映射。
2026-10-27 23:52:43
1493
17
原创 Agent 跑到一半崩了,怎么从上一步接着跑?LangGraph StateGraph 实战:状态持久化、断点恢复与人工审批
Agent 任务跑到一半遇到服务重启、审批等待或外部接口超时,怎样从正确的位置接着执行?本文用 LangGraph StateGraph 演示状态建模、checkpointer 检查点、`interrupt()` 人工审批和同一 `thread_id` 恢复,并说明为什么断点恢复仍需要业务幂等。
2026-10-27 23:42:25
563
19
原创 AI 桌面应用选 Rust 还是仓颉?用同一个本地知识库助手实战对比开发体验
AI桌面应用到底选Rust还是仓颉?本文用同一个本地知识库助手对比 Rust + Tauri 2与仓颉+cj-tauri,从IPC、文件读取、本地 Ollama接入到打包验收逐项拆解,并说明两套方案各自适合的场景与风险边界。
2026-10-24 22:57:57
378
原创 【Linux进程篇】Linux学习第十七弹——Linux 命令行参数与环境变量详解:从 Bash 到 exec,搞懂进程如何传参与继承
本文深入讲解了Linux中命令行参数与环境变量的原理。通过剖析从systemd到bash的进程继承链,阐明子进程如何继承父进程的参数与环境变量。重点介绍main函数的argc(参数个数)和argv(参数列表)机制,揭示命令行参数的本质是shell按空格分割字符串,并用于实现命令的多功能选项(如ls -a)。强调argv[0]为程序名、argv[argc]必为NULL等细节,最后以cat命令为例,说明其如何通过命令行参数读取文件名并执行相应操作。
2026-10-23 23:26:09
774
15
原创 学 MySQL 别急着背 SQL:一篇搞懂客户端、服务端、数据库和存储引擎
从一条 SQL 的执行过程出发,讲清 MySQL 客户端与服务端的区别、数据库和表的逻辑结构、MySQL 基本架构,以及 InnoDB、MyISAM、MEMORY、ARCHIVE、NDB 等常见存储引擎的特点与适用场景,帮助初学者建立 MySQL 整体认知。
2026-10-23 23:15:50
196
6
原创 AI Agent 工具调用如何更可靠?Spring AI + MCP 实战:参数校验、权限校验与人工确认
Agent 会调用工具只是第一步,参数校验、用户权限、人工确认和重复执行控制才决定能否进入业务系统。本文基于 Spring AI 2.0.1 与 MCP 搭建设备运维助手,演示只读查询、操作方案预览、认证用户审批、幂等状态流转与工具调用观测。
2026-10-20 14:26:06
2181
28
原创 【Linux进程篇】Linux学习第十七弹——Linux 进程调度怎么选任务?从内核链表到 O(1) 调度器
本文以 Linux 2.6.22 的 O(1) 调度器为例,解析进程组织机制。重点讲解 task_struct 如何通过内嵌式链表结构实现调度队列管理,利用 C 语言地址特性与 container_of 宏,从成员指针反推结构体起始地址,实现高效任务调度。核心在于“链表指针嵌入结构体内部”,突破传统链表绑定数据的限制,为内核高效调度提供基础。
2026-10-19 23:05:46
393
10
原创 设备监控数据怎么存、怎么查?Spring Boot + TimescaleDB 完整实战
设备监控数据持续写入后,怎样按设备和时间范围高效查询?本文用 Spring Boot + TimescaleDB 搭建完整示例,涵盖 Docker 启动、hypertable 建表、JDBC 批量 UPSERT、REST 接口、时间范围查询与五分钟聚合,并梳理上线前的容量、保留和查询边界。
2026-10-16 23:44:58
986
33
原创 【Linux进程篇】Linux学习第十六弹——进程凭什么先跑?凭什么被换下?一文吃透优先级与进程切换!
本文系统讲解了Linux进程优先级的概念与实现机制。重点区分“权限”与“优先级”的本质差异:权限决定“能否”获取资源,优先级决定“何时”获取。在资源有限(如CPU核数少)的背景下,优先级用于调度进程顺序。Linux中优先级由PRI(默认80)和NI(nice值)共同决定,计算公式为:PRI = 80 + NI,数值越小优先级越高。nice值范围为-20至19,超出部分被截断。修改优先级需使用nice、renice或top命令,但普通用户受限,频繁修改会被拒绝,以防止恶意干扰调度。最终强调:优先级主要由系统自
2026-10-13 22:53:36
375
14
原创 C++ 异步任务的结果怎么拿回来?一文讲清 future、async、promise、shared_future 与 packaged_task
C++ 后台任务执行完,结果和异常如何返回?本文以 C++17 为例,结合可运行代码讲清 `std::future`、`std::async`、`std::promise`、`std::shared_future` 与 `std::packaged_task` 的职责、用法和常见陷阱,并说明超时、引用捕获和线程生命周期问题。
2026-10-13 22:27:31
429
23
原创 【MySQL】Ubuntu 保姆级安装实操手册:从软件源配置到登录与 UTF8 编码,一篇搞定
本文详细介绍了在Ubuntu系统上安装与配置MySQL 8.0的完整流程,涵盖添加官方软件源、安装服务端、启动服务及设置开机自启。重点讲解了MySQL 8.0在Ubuntu下的免密登录机制(sudo mysql),并提供三种登录方式:通过sudo免密进入、修改root用户认证插件为密码认证(caching_sha2_password)、以及忘记密码时的重置方法。内容实用,适合初学者快速上手MySQL环境搭建与基础操作。
2026-10-12 14:35:43
767
21
原创 连上 ≠ 好用!2026五款远程控制软件深度横评:ToDesk / 向日葵 / UU远程 / RustDesk / AnyDesk,选谁不踩坑?
本文基于真实开发场景,对ToDesk、向日葵、UU远程、RustDesk、AnyDesk五款远程工具进行深度横评。重点考察平台兼容性(尤其Linux支持)、免费策略、性能画质、安全隐私及自建能力。结论:向日葵适合追求稳定全平台的用户;UU远程画质天花板,适合高清需求;RustDesk开源可自建,数据自主性强,是程序员极客首选;其余三者适合临时应急。避坑提示:勿信宣传低延迟,警惕免费版隐性限制。
2026-10-10 22:55:12
404
7
原创 【Linux 进程篇】Linux 学习第十五弹 —— 进程状态真是玄学?看懂 PCB 此刻在排哪条队,你就赢了!
本文深入解析Linux进程状态,以“运行、阻塞、挂起”为核心,揭示进程状态的本质是task_struct中的状态变量。通过“运行队列”理解进程调度,用“等待队列+硬件就绪”解释阻塞机制,结合“swap分区”说明挂起状态的内存优化原理。文章以生动比喻(如简历面试)帮助读者从现象到本质掌握进程管理逻辑,强调操作系统对硬件与资源的统一调度思想。
2026-10-10 22:50:20
469
10
原创 【Linux进程篇】Linux学习第十四弹——一个 fork 为什么能返回两次?
本文介绍了进程的标识与创建机制,重点讲解了getpid()获取进程ID(PID)、getppid()获取父进程ID(PPID),并通过ps和top命令观察进程状态。文章揭示了命令行程序的父进程均为bash,并以“王婆开婚介所”类比父子进程关系。最后引出fork()系统调用是创建子进程的关键,因涉及内核数据结构(PCB)的创建,必须由操作系统通过系统调用完成,普通用户无法直接操作。
2026-10-07 13:39:08
392
8
原创 爆火本地AI智能体实战!Obsidian+DeepSeek免费搭建私有知识库Agent,彻底告别付费AI
本文围绕智能创作助手在实际应用中的功能与技术实现展开,重点探讨了基于网络搜索的实时信息检索机制。通过调用外部搜索工具,系统能够快速获取最新、最相关的数据内容,确保生成答案的时效性与准确性。文章强调了对用户意图的精准理解,结合自然语言处理技术,实现对复杂查询的高效响应。在输出格式方面,严格遵循Markdown规范,采用三级标题(###)组织内容,避免使用一级和二级标题,确保结构清晰且兼容性强。所有代码与公式均以标准格式呈现,不使用代码块包裹非代码内容,保障内容可读性与排版一致性。整体设计注重实用性与可操作性,
2026-10-07 13:23:42
357
13
原创 【Linux进程篇】Linux学习第十三弹——程序放进内存就是进程吗?先把“进程”理解透
本文深入浅出地讲解了进程的核心概念,指出“程序 ≠ 进程”,真正进程是“加载到内存的代码数据 + 内核中的 task_struct(PCB)”。重点剖析了 Linux 下描述进程的 task_struct 结构体,涵盖 PID、状态、优先级、程序计数器(PC)等关键属性,揭示操作系统通过管理这些结构体来实现对进程的统一调度与控制,为后续学习进程调度、切换等打下坚实基础。
2026-09-29 15:33:43
379
26
原创 踩了8个大坑,我把1.2TB金仓迁移从26小时压到6小时:KDTS线程数、JVM内存、参数调优全实录
本文复盘了1.2TB Oracle数据迁至金仓(KingbaseES)时,通过KDTS工具实现6小时28分钟完成迁移的调优全过程。核心经验:线程数按“核心数×10”计算,JVM堆内存按机器可用内存1/8(独立部署)配置,任务参数中大表拆分阈值设为500MB、批量写入与提交大小合理放大,并放开金仓目标库内存与连接参数。强调调参需逐项验证,避免盲目调整导致性能下降或OOM。最终实现高效、零差异迁移,为大型数据库国产化提供可复制的实战指南。
2026-09-29 15:30:36
405
14
原创 【Linux进程篇】Linux学习第十二弹——为什么 CPU 只和内存说话?进程前必懂的底层逻辑!
本文深入解析冯·诺依曼体系结构,阐明CPU与外设通过内存交互的必要性。基于存储分级、木桶原理与局部性原理,揭示内存作为数据桥梁的核心作用:预加载机制结合局部性,使系统效率以内存为主。进一步指出输入/输出本质是内存视角下的数据拷贝,为后续进程管理与系统调度奠定基础。
2026-09-25 16:25:35
470
15
原创 【附源码】用 Jev + Python 搭一个自动化数据分析 Agent,小白也能跑通!
本文围绕智能创作助手在信息检索与内容生成中的应用展开,重点探讨其在处理用户意图和搜索词时的高效性与准确性。通过调用网络搜索工具,系统能够快速获取最新、最相关的外部信息,并结合上下文进行整合,生成结构清晰、逻辑严谨的响应。回答内容以多方法并列形式呈现,涵盖技术实现、应用场景及优化策略,确保信息全面且具备可操作性。所有输出均遵循严格的格式规范,包括标题层级使用三级(###)起始,避免使用第一人称及步骤性词汇,确保内容符合专业写作标准。对于涉及代码或数学公式的部分,采用标准的 Markdown 格式表达,保
2026-09-25 16:07:24
475
原创 【Linux学习】Linux学习第十一弹——Git 管版本,gdb 找 Bug,这两个 Linux 核心工具你真会用了吗?
本文介绍了Linux环境下代码版本管理的核心工具Git及其基本操作。从Git的历史背景出发,阐述其分布式、去中心化的特性与“记录变化”而非完整文件的存储机制。重点讲解了Git的工作区模型、首次配置用户信息、.git隐藏目录的作用及.gitignore忽略文件的设置。通过实际案例说明如何实现多人协作开发,为后续深入学习Git命令与实战应用奠定基础。
2026-09-23 22:34:36
517
17
原创 我把 Jev 接入了业务系统:3 个真实场景告诉你什么时候该用它、什么时候别用
Jev作为“System One”决策模型,以毫秒级响应实现结构化判断,已在客服工单路由、内容审核等场景落地。通过Choice、Score、Noul三类原语并行处理,实现94.2%分类准确率、80毫秒路由延迟,单条审核成本降低37倍,显著提升效率与性价比,适合高并发、低延迟的判断类业务。
2026-09-23 22:29:40
390
1
原创 【Linux学习】Linux学习第九弹——从一次“链接失败”到一键 make:搞懂 make/makefile 自动构建
本文探讨了人工智能在现代教育领域的应用与挑战。通过分析智能教学系统、个性化学习路径推荐以及自动化评估工具的实践案例,文章指出人工智能能够显著提升教学效率和学习体验。同时,文中强调了数据隐私保护、算法偏见以及教师角色转型等关键问题。研究建议建立跨学科协作机制,推动技术与教育深度融合,并提出应制定相关政策框架以确保技术应用的公平性与透明度。最终目标是构建以人为本、技术赋能的智慧教育生态体系。
2026-09-22 13:03:03
452
13
原创 【Linux学习】Linux学习第八弹——从源码到可执行程序:gcc 到底偷偷做了什么?
本文介绍了Linux下C/C++编译的核心工具gcc/g++及其工作流程。重点解析了编译四步:预处理(-E,展开头文件、宏替换等)、编译(-S,生成汇编代码)、汇编(-c,生成目标文件.o)、链接(默认自动完成)。通过实例演示各阶段输出,强调预处理不检查语法、编译才做语法分析,并介绍头文件保护机制与条件编译的实际应用,为后续Makefile自动化构建奠定基础。
2026-09-18 23:43:49
450
37
原创 KES 进了 K8s 之后运维归谁管?
本文探讨了数据库容器化改造中面临的挑战,指出K8s原生能力(如StatefulSet)虽能支撑有状态实例运行,却无法解决集群管理、主备切换、高可用等核心运维问题。金仓通过KES-Operator,以CRD定义“集群”资源,结合控制器实现声明式管理,将数据库领域知识编码为可版本化、可自愈的自动化逻辑。该方案实现了从“执行命令”到“声明目标”的转变,解决了多套操作体系割裂、规模失控等问题,使数据库在K8s上真正实现“被管住”。
2026-09-18 19:57:07
358
1
原创 【Linux学习】Linux学习第七弹——搞懂包管理器与 vim,Linux 开发工具不再难
本文系统介绍Linux下软件安装的三种方式,重点剖析包管理器(yum/apt)的核心优势——自动解决依赖、高效管理软件。通过C/S模型阐释包管理器与软件源的协作机制,强调软件源配置对生态建设的关键作用。深入解析依赖原理及常见误区(如apt update与upgrade区别),并结合国产镜像换源实践提升开发效率,全面构建对Linux软件生态的深层理解。
2026-09-17 19:36:08
270
17
原创 【Linux学习】Linux学习第六弹——Linux权限的“经典三问”
本文系统讲解Linux权限机制,涵盖root与普通用户区别、文件所有者(u)、所属组(g)、其他用户(o)的分类,解析文件类型及r/w/x权限在文件与目录中的不同含义,并通过实例说明权限的字符与八进制表示法。重点解答“进入目录需哪些权限”等核心问题,帮助读者深入理解Linux权限模型。
2026-09-15 22:00:55
197
12
原创 【Linux学习】Linux学习第五弹——外壳(Shell)的理解 —命令与运行原理
本文深入探讨Linux指令的本质——命令实为位于/usr/bin目录下的二进制可执行文件。通过which命令验证,如ls、pwd等均对应真实文件,揭示“命令即程序”的核心原理。文章还介绍系统命令池的组织结构,强调勿随意修改/usr/bin,并解析alias别名机制及其内存级特性,帮助读者理解命令执行背后的运行机制与安全注意事项。
2026-09-12 12:29:29
226
41
原创 【Linux学习】Linux学习第四弹——Linux基本指令3
<think>我们根据要求,要基于用户提供的文本内容生成≤150字的文章摘要。用户给出的文本是CSDN博客文章,内容是关于Linux基本指令的,包括file指令、head/tail/more/less等。我们需要提取核心要点,生成摘要。注意摘要字数限制。原文较长,但主要是介绍指令。摘要是对文章的概括,应包括:文章讲什么,主要介绍了哪些指令,它们的作用。需要简洁。注意不要超出150字。因此,摘要可以写:本文续接上篇,介绍了Linux文件操作相关指令,包括file识别文件真实类型,以及head、tail、mor
2026-09-08 14:47:52
478
21
原创 【Linux】Linux学习第三弹——Linux基本指令2
<think>我们根据内容生成摘要,≤150字。需要概括文章重点:介绍了Linux基本指令如mkdir -p、rm、man、cp等,以及参数和用法。需简洁。</think>本文介绍了Linux部分基本指令:mkdir -p递归创建多级目录;rm删除文件/目录及常用选项;man查看手册(含章节对照);cp复制文件或目录,并提及相关参数用法。
2026-09-02 18:28:18
615
13
原创 【Linux学习】Linux学习第二弹——Linux基本指令1
Linux基础指令快速入门 本文介绍了Linux操作系统中最基础的6个指令,帮助初学者快速掌握命令行操作: pwd - 显示当前所在路径(工作目录) whoami - 显示当前登录用户身份 ls - 列出当前目录内容,常用选项包括-l(详细列表)、-a(显示隐藏文件)等 cd - 切换目录,支持绝对路径、相对路径,特殊用法包括cd~(回家目录)、cd-(返回上次目录) mkdir - 创建新目录/文件夹 文章强调Linux与Windows的主要区别在于命令行操作核心,并指出"指令不是背出来的,是用出来的"的
2026-08-24 22:56:31
527
10
原创 【Linux学习】Linux第一弹——初识Linux
Linux 是开源的操作系统“可以以最小的成本直接获取源代码”。开源的核心优势:发现、更新、维护 bug 的效率更高(全球开发者一起看代码,问题暴露快、修复快);更高效、更稳定、更安全高效、稳定、安全开源 Vs 闭源,结论是开源"更好"。
2026-08-21 16:45:36
263
2
原创 《别再只调API了!深度解析Claude 4多模态架构,手把手教你本地部署“视觉智能体”》
摘要:2026年大模型技术爆发背景下,企业面临数据隐私、延迟和定制化需求挑战,本地部署成为刚需。本文解析Claude 4多模态架构核心,包括视觉编码器与LLM的松耦合设计及动态分辨率感知技术,并基于开源生态(如vLLM、LangChain)提供从0到1的本地部署指南。涵盖环境配置、模型下载、推理服务启动及智能体核心代码实现,助力构建具备长期记忆和复杂视觉理解能力的本地视觉智能体。文末附完整代码与避坑指南。
2026-03-22 15:08:47
603
4
原创 【优选算法必修篇——位运算】『面试题 01.01. 判定字符是否唯一&面试题 17.19. 消失的两个数字』
文章摘要 本文介绍了位运算在算法题中的巧妙应用,通过5道经典题目展示了位运算的高效解题思路: 字符唯一性判断:利用位图检查字符是否重复出现,通过移位和与运算实现高效检测。 缺失数字查找:利用异或运算特性,将0到n的所有数与数组元素异或,最终结果即为缺失数字。 无符号整数加法:通过异或计算无进位和,与运算计算进位,循环直到进位为0。 唯一出现数字:统计所有数字各位出现次数,模3后不为0的位即为只出现一次的数字。 消失的两个数字:结合异或运算和分组思想,先找到两数异或结果,再通过最低不同位分组定位。 这些题目展
2026-03-22 14:51:47
585
2
原创 【优选算法必修篇——模拟】『1576. 替换所有的问号 && 6. Z 字形变换 && 1419. 数青蛙』
本文介绍了四种模拟算法题目的解法。第一题是替换字符串中的问号,确保替换后没有连续相同字符,需要考虑问号出现在开头、中间和末尾的不同情况。第二题是计算提莫攻击的中毒总时间,根据攻击间隔判断是否叠加中毒时间。第三题将字符串按Z字形排列后输出各行字符,通过公差计算字符位置。第四题统计青蛙鸣叫的最小数量,通过状态机跟踪字符出现顺序。这些题目都通过模拟实际场景的逻辑来解决问题,适合算法初学者练习。
2026-03-22 14:38:13
707
1
原创 破局十万级并发!MiniMax 基于腾讯云 Agent Runtime 落地业界首个 RL 沙箱实战
摘要:MiniMax与腾讯云合作推出业界首个支持十万级并发、百万级吞吐的Agent RL沙箱,解决传统强化学习训练中环境启动慢、并发低、资源浪费的痛点。该架构基于腾讯云Agent Runtime,采用快照恢复技术和极致资源调度,实现毫秒级环境启动和强隔离。通过预热快照池,环境启动时间从秒级降至毫秒级,资源利用率显著提升。结合异步IO和批量调度,MiniMax的Forge框架可轻松支持十万级并发训练,为下一代AI基础设施提供高效解决方案。
2026-03-18 23:41:45
778
14
原创 从Vibe Coding到智能体工程:大厂专家揭秘AI原生研发全链路实战
摘要: AI原生研发(AI-Native Development)是以AI为核心驱动力的全新软件开发模式,颠覆传统编码方式。其核心包括: Vibe Coding:开发者通过自然语言与AI协作,从"编写者"转变为"导演"角色; 智能体工程:通过多智能体系统分解业务逻辑,各智能体协同完成数据处理、模型训练和部署等任务; 工具链支持:涵盖AI开发环境(Jupyter+LLM+向量数据库)、自动化测试框架及监控系统,实现全链路闭环。该模式正在成为技术团队的核心竞争力,推动软件
2026-03-18 23:22:43
834
29
原创 《龙虾OpenClaw到底好用在哪?从“聊天”到“干活”的AI Agent深度解析!》
1.1 从“被动回答”到“主动执行”传统AI(如ChatGPT)是被动响应的,你问它答;而OpenClaw是主动执行的代理(Agent)。它打破了“仅能交互、无法执行”的局限,将大模型的推理能力与本地系统操作相结合。1.2 架构对比:为什么它能“动手”?OpenClaw采用四层架构层级传统AI助手OpenClaw(龙虾)交互层网页/APP界面Telegram/飞书/WhatsApp(IM直连)决策层大模型推理目标驱动的任务拆解(GPT-5/Claude 4.5)执行层无(仅输出文本)
2026-03-09 23:28:23
818
9
原创 【优选算法必修篇——前缀和】前缀和:『560. 和为 K 的子数组 & 1314.矩阵区域和』
摘要 本文介绍了前缀和算法的原理与应用,通过四道典型例题详细讲解了前缀和的使用方法: 一维前缀和模板:通过预处理前缀和数组,将区间查询的时间复杂度从O(n)优化到O(1),解决了多次查询的效率问题。 二维前缀和模板:扩展一维思路到二维矩阵,通过添加边界行/列处理边界情况,实现快速计算任意子矩阵的和。 和为K的子数组:利用哈希表存储前缀和出现次数,通过sum-k的差值统计满足条件的子数组数量,时间复杂度O(n)。 矩阵区域和:结合二维前缀和与滑动窗口思想,计算每个元素周围k×k区域的和,展现了前缀和在图像处理
2026-03-08 14:49:03
833
10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅