<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[LAN_chen_ning的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/LAN_chen_ning</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; LAN_chen_ning]]></copyright><item><title><![CDATA[内存池实现（c语言版）]]></title><link>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/162876271</link><guid>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/162876271</guid><author>LAN_chen_ning</author><pubDate>Tue, 14 Jul 2026 16:12:38 +0800</pubDate><description><![CDATA[C语言内存池实现摘要 本文介绍了一个基于C语言的内存池实现方案，其核心是采用size class分级管理策略。内存池包含8个固定尺寸档位（32B-4096B），每个档位维护自己的chunk链表和free_list空闲块链表。分配时根据请求大小匹配对应档位，从空闲链表取块；释放时将块重新挂回链表。关键设计包括： 数据结构：包含块头信息(header)、复用空闲块的链表节点(free_node)、批量申请的大内存块(chunk)和分级管理器(memory_class) 性能优化：通过固定块减少碎片、空闲链表实现]]></description><category></category></item><item><title><![CDATA[Git/GitHub的基本使用]]></title><link>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/162846950</link><guid>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/162846950</guid><author>LAN_chen_ning</author><pubDate>Mon, 13 Jul 2026 17:35:49 +0800</pubDate><description><![CDATA[Git/GitHub 核心学习路线摘要 本文系统介绍了 Git/GitHub 的核心工作流与常用操作： 环境配置 安装 Git 并设置全局用户信息 强调 Git 是本地版本数据库，GitHub 是协作平台 基础工作流 创建本地仓库 (git init) 工作区→暂存区→本地仓库 (add→commit) 查看状态差异 (status/diff/log) 撤销操作 区分工作区/暂存区/已提交的撤销方式 推荐 restore、restore --staged、revert 分支管理 创建/切换分支 (switc]]></description><category></category></item><item><title><![CDATA[Git 的深入理解：工作区、暂存区、本地仓库与 .git目录]]></title><link>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/162574573</link><guid>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/162574573</guid><author>LAN_chen_ning</author><pubDate>Sat, 04 Jul 2026 10:56:22 +0800</pubDate><description><![CDATA[本文解析Git本地仓库的核心机制，重点剖析.git目录的结构与功能。工作区文件与.git数据库分离：代码文件存在于工作区，提交后数据存入.git/objects/。文章详细阐述HEAD、分支与commit的引用关系（HEAD→branch→commit），并介绍Git底层三类对象（commit/tree/blob）的层级结构。通过实操命令（如git cat-file、git ls-tree）可查看提交历史、文件版本差异，并验证工作区与版本库的文件区别。关键结论：Git通过.git目录保存项目历史快照，而非直]]></description><category></category></item><item><title><![CDATA[Codex 桌面版远程连接 Ubuntu进行开发]]></title><link>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/162245382</link><guid>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/162245382</guid><author>LAN_chen_ning</author><pubDate>Tue, 23 Jun 2026 21:02:41 +0800</pubDate><description><![CDATA[本文介绍了一种在Windows系统下通过VMware运行Ubuntu虚拟机，并使用Codex桌面端进行远程C/C++项目开发的方法。具体步骤包括：在Ubuntu中安装SSH服务并配置IP；Windows端设置OpenSSH客户端并生成密钥实现免密登录；在Ubuntu上安装Codex CLI工具；处理可能的bubblewrap沙箱限制；最后在Codex桌面端添加SSH连接并选择项目目录。文中还提供了Git版本控制建议和常见问题解决方案，最终实现Windows端通过SSH远程编辑、编译Ubuntu中的代码项目。]]></description><category></category></item><item><title><![CDATA[网络实战项目——kvStore]]></title><link>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/160286204</link><guid>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/160286204</guid><author>LAN_chen_ning</author><pubDate>Mon, 20 Apr 2026 10:51:34 +0800</pubDate><description><![CDATA[这篇文章介绍了一个基于C语言实现的KV存储服务器项目kvStore，其架构类似简化版Redis。项目采用分层设计，包含网络层、协议层、核心层、接口层和kv引擎层五个主要部分，支持SET/GET/DEL/MOD/EXIST等基础命令操作。关键特性包括：1）自定义内存管理接口kvs_malloc/kvs_free；2）通过strtok实现命令协议解析；3）支持多种网络模型切换（Reactor/Proactor/协程）；4）采用回调机制解耦网络层与协议处理。项目通过宏定义支持不同存储结构（红黑树、数组、哈希表），]]></description><category></category></item><item><title><![CDATA[在ubuntu中从零开始配置claude Code]]></title><link>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/160280934</link><guid>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/160280934</guid><author>LAN_chen_ning</author><pubDate>Sat, 18 Apr 2026 20:16:11 +0800</pubDate><description><![CDATA[最后，在日常使用中只要用这三个指令即可终端 1：该指令是启动LiteLLMllmup终端 2：该指令是在指定目录下启动claude Codecd /你的项目目录ccup。]]></description><category></category></item><item><title><![CDATA[io_uring详解]]></title><link>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/159965083</link><guid>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/159965083</guid><author>LAN_chen_ning</author><pubDate>Thu, 16 Apr 2026 15:33:50 +0800</pubDate><description><![CDATA[摘要：io_uring高性能异步I/O框架解析 io_uring是Linux内核提供的高性能异步I/O框架，通过共享内存和无锁环形队列设计实现高效通信。其核心包括提交队列(SQ)和完成队列(CQ)，用户程序通过liburing库可便捷操作。相比传统epoll+阻塞I/O和POSIX AIO方案，io_uring消除了不必要的系统调用，支持真正的内核级异步I/O，并统一处理文件、网络等多种I/O操作。]]></description><category></category></item><item><title><![CDATA[epoll详解以及Reactor模式]]></title><link>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/159965046</link><guid>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/159965046</guid><author>LAN_chen_ning</author><pubDate>Thu, 16 Apr 2026 10:11:34 +0800</pubDate><description><![CDATA[这篇文章详细介绍了Linux下epoll网络编程的核心知识体系，分为四个部分： epoll三大API详解： epoll_create创建实例 epoll_ctl管理监控列表（红黑树） epoll_wait获取就绪事件 重点讲解了参数配置和使用场景 epoll底层原理： 核心是红黑树+就绪双向链表 通过回调机制实现高效事件通知 避免了传统select/poll的全量扫描 Reactor模式架构： I/O事件驱动设计 Reactor负责事件监听分发 Handler处理具体业务逻辑 ]]></description><category></category></item><item><title><![CDATA[IO多路复用select/poll/epoll]]></title><link>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/159688641</link><guid>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/159688641</guid><author>LAN_chen_ning</author><pubDate>Wed, 08 Apr 2026 19:41:13 +0800</pubDate><description><![CDATA[摘要： Linux系统提供了三种I/O多路复用机制：select、poll和epoll。select通过位图监控文件描述符，存在1024连接数限制和O(N)效率问题；poll改用数组结构突破连接限制，但仍需线性扫描。epoll采用事件驱动模型，通过红黑树管理fd，就绪事件O(1)返回，支持ET/LT模式，适合高并发场景。三者中epoll性能最优，但仅限Linux，而select跨平台性最佳。技术演进体现从简单轮询到高效事件通知的优化路径。]]></description><category></category></item><item><title><![CDATA[CMake基础]]></title><link>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/159464135</link><guid>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/159464135</guid><author>LAN_chen_ning</author><pubDate>Wed, 25 Mar 2026 11:41:21 +0800</pubDate><description><![CDATA[CMake基础指令摘要 CMake是一个跨平台构建工具，用于管理C/C++项目编译过程。]]></description><category></category></item><item><title><![CDATA[Linux网络编程基础]]></title><link>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/159414658</link><guid>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/159414658</guid><author>LAN_chen_ning</author><pubDate>Tue, 24 Mar 2026 09:04:16 +0800</pubDate><description><![CDATA[本文详细介绍了Linux Socket编程的核心API。每个API都包含参数说明、返回值及典型用法示例，涵盖了TCP/UDP套接字编程的基础功能。]]></description><category></category></item><item><title><![CDATA[make/makefile/cmake/nmake的解释]]></title><link>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/159158021</link><guid>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/159158021</guid><author>LAN_chen_ning</author><pubDate>Tue, 17 Mar 2026 10:48:49 +0800</pubDate><description><![CDATA[本文介绍了C/C++项目构建工具链的工作原理：GCC编译器负责单个源文件的编译链接；Make工具通过Makefile实现多文件项目的自动化构建；CMake则能根据CMakeLists.txt自动生成跨平台的Makefile。文章详细说明了从源代码到可执行文件的完整编译流程（预处理、编译、汇编、链接），并比较了不同优化级别。]]></description><category></category></item><item><title><![CDATA[C语言main函数中的argc和argv参数的作用]]></title><link>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/157585363</link><guid>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/157585363</guid><author>LAN_chen_ning</author><pubDate>Sat, 31 Jan 2026 18:01:53 +0800</pubDate><description><![CDATA[本文介绍了C语言中main函数接收命令行参数的用法。]]></description><category></category></item><item><title><![CDATA[状态机的使用示例]]></title><link>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/157585195</link><guid>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/157585195</guid><author>LAN_chen_ning</author><pubDate>Sat, 31 Jan 2026 17:54:23 +0800</pubDate><description><![CDATA[文章摘要：本文介绍了一种基于状态转换的单词计数方法。通过定义IN和OUT两种状态，程序可以准确识别文本中单词的边界。代码示例展示了一个状态机实现，当检测到字母字符时进入IN状态，遇到非字母字符时触发计数并转为OUT状态。该方法能有效统计文本文件中单词数量。。]]></description><category></category></item><item><title><![CDATA[双指针的使用]]></title><link>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/157584994</link><guid>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/157584994</guid><author>LAN_chen_ning</author><pubDate>Sat, 31 Jan 2026 17:42:41 +0800</pubDate><description><![CDATA[双指针是一种在数组、链表等线性数据结构中常用的算法技巧，其核心思想是。]]></description><category></category></item><item><title><![CDATA[VSCode通过SSH与虚拟机中linux系统的连接]]></title><link>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/157584630</link><guid>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/157584630</guid><author>LAN_chen_ning</author><pubDate>Sat, 31 Jan 2026 17:16:41 +0800</pubDate><description><![CDATA[本文介绍了在Windows上使用VSCode通过SSH连接Linux虚拟机的步骤：首先在Linux中安装并启动SSH服务，获取虚拟机IP地址（需选择ens33网卡IP）；然后在VSCode中配置SSH连接，输入密码后即可成功建立远程连接。该方法实现了跨平台的远程开发和代码管理。]]></description><category></category></item><item><title><![CDATA[C语言中的文件操作]]></title><link>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/156767012</link><guid>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/156767012</guid><author>LAN_chen_ning</author><pubDate>Fri, 09 Jan 2026 16:27:55 +0800</pubDate><description><![CDATA[本文章主要概括了C语言中基本的文件操作]]></description><category></category></item><item><title><![CDATA[基础排序——冒泡、选择、插入]]></title><link>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/128890313</link><guid>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/128890313</guid><author>LAN_chen_ning</author><pubDate>Sun, 05 Feb 2023 14:36:54 +0800</pubDate><description><![CDATA[基础排序——冒泡、选择、插入]]></description><category></category></item><item><title><![CDATA[全逆冒泡排序]]></title><link>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/128601943</link><guid>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/128601943</guid><author>LAN_chen_ning</author><pubDate>Sun, 08 Jan 2023 16:05:51 +0800</pubDate><description><![CDATA[全逆冒泡排序]]></description><category></category></item><item><title><![CDATA[数字三角形]]></title><link>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/128600557</link><guid>https://blog.youkuaiyun.com/LAN_chen_ning/article/details/128600557</guid><author>LAN_chen_ning</author><pubDate>Sun, 08 Jan 2023 14:14:09 +0800</pubDate><description><![CDATA[数字三角形求解过程]]></description><category></category></item></channel></rss>