- 博客(218)
- 收藏
- 关注

原创 【CS创世SD NAND征文】小型夜灯为何需要存储芯片?从基础照明到智能存储的升级密码
本文介绍了一款基于ESP32-S3主控和CSNP1GCR01-AOW存储芯片的智能小型夜灯方案。该夜灯采用高效LED光源和智能感应技术,支持远程控制、自动调光等功能。存储方案选用微型化设计的SD NAND芯片,具有1Gbit容量、6*8mm超小封装,内置四大管理算法保障数据安全。实测显示其读取速度超20MB/s,写入速度4.6MB/s,满足灯光模式存储需求。整体方案兼顾性能与体积,实现了稳定可靠、低功耗的智能照明体验。
2025-08-07 08:30:00
5134
36

原创 【CS创世SD NAND征文】额贴式睡眠监测仪的数据守护者:存储芯片如何实现7×24小时安眠状态下的全时稳定记录
额贴式睡眠监测仪技术解析 该产品采用nrf52832主控芯片和CSNP64GCR01-BOW存储芯片为核心,构建低功耗、高精度的睡眠监测系统。nrf52832凭借ARM Cortex-M4F处理器和蓝牙功能,实现高效数据处理与无线传输;CSNP64GCR01-BOW存储芯片以8GB容量、7×8.5mm微型封装及20MB/s读写速度,满足持续监测数据存储需求,内置EDC/ECC等算法保障数据安全。测试显示,芯片在-40℃~85℃环境下稳定运行,擦写寿命达5-10万次,兼顾性能与耐用性。整套方案通过传感器模块实
2025-08-07 08:30:00
5055
50
原创 traceroute原理深度解析与面试核心考点汇总
本文详细解析了网络诊断命令traceroute的工作原理与应用场景。通过TTL字段和ICMP报文的协作机制,traceroute能追踪数据包从源到目标的完整路径。文章对比了traceroute与ping的核心区别,分析了输出结果的解读方法,并针对面试常见问题提供深度解答,包括UDP协议选择原因、星号(*)的含义解释等。最后总结了traceroute在定位网络故障时的实用技巧,涵盖拥堵判断、链路中断识别等关键考点。全文以技术原理为核心,结合实战案例,帮助读者掌握这一重要的网络诊断工具。
2025-08-17 08:30:00
705
2
原创 Redis-plus-plus API使用指南:通用操作与数据类型接口介绍
本文介绍了Redis C++客户端库redis-plus-plus中几个常用API的使用方法及注意事项,包括get/set、exists、del、keys、expire等核心操作。重点讲解了set命令的参数设置、get返回的OptionalString类型处理方式,以及keys命令的插入迭代器用法。示例代码展示了各API的基本使用场景,并提醒了编译时需要链接相关库文件。文章还解释了OptionalString的设计原理及其安全访问方法,为开发者提供了Redis C++接口的实用参考。
2025-08-17 08:30:00
1883
35
原创 Redis-plus-plus 安装指南
本文详细介绍了redis-plus-plus的安装与使用。首先需安装依赖库hiredis,然后下载redis-plus-plus源码并手动编译安装。步骤包括创建build目录、执行cmake生成Makefile、make编译及make install安装。成功安装后会在系统目录添加头文件和库文件。最后通过示例代码验证安装,展示如何连接Redis服务器并发送PING命令获取响应。整个过程清晰明了,适合开发者快速上手使用redis-plus-plus进行Redis操作。
2025-08-16 21:29:01
572
原创 ping 原理深度解析与面试核心考点汇总
本文深入解析了ping命令的底层原理与关键技术点,涵盖ICMP协议报文结构、工作流程及常见问题分析。ping基于ICMP回声请求/应答机制(Type 8/0),通过TTL、标识符等字段实现网络诊断。文章详细介绍了数据封装、传输过程及结果解析方法,并对比了ping与TCP/UDP、traceroute的区别。重点分析了ping不通的原因(如设备离线、防火墙拦截、MTU不匹配等)和进阶问题,总结出面试核心考点:ICMP协议本质、工作流程、关键字段作用及故障排查思路。全文从原理到实践,系统梳理了ping命令的面试
2025-08-16 08:30:00
779
原创 C++11 异步编程核心组件详解:从 std::async ,std::future,std::promise到 std::packaged_task
std::async 是 C++11 提供的异步任务处理工具,通过 std::future 获取结果,简化了多线程编程。它支持三种启动策略:立即异步执行(async)、延迟同步执行(deferred)和默认自动选择。std::future 作为异步编程核心组件,用于获取任务结果或状态,与 std::async 配合实现异步任务的结果传递。两者共同构成了 C++ 异步编程模型的基础,适用于单次、需要返回结果的异步场景,但高频任务建议使用线程池以提高效率。
2025-08-15 08:30:00
921
原创 Redis 有序集合类型详解:命令解析与典型应用场景
Redis有序集合(Sorted Set)命令详解 有序集合是Redis中一种特殊的数据结构,它保留了集合不重复元素的特性,同时为每个元素关联一个分数(score)用于排序。本文详细介绍了9个核心命令: 增删改查:zadd(添加/更新元素)、zrem(删除元素)、zincrby(增减分数)、zscore(获取分数) 范围查询:zrange/zrevrange(按排名)、zrangebyscore/zrevrangebyscore(按分数) 统计排名:zcard(元素总数)、zcount(分数区间统计)、zr
2025-08-14 08:30:00
588
2
原创 Redis 集合Set类型详解:命令解析与典型应用场景
Redis Set(集合)是一种无序且元素唯一的字符串集合类型,支持多种高效操作。主要命令包括:sadd添加元素,srem移除元素,scard获取元素数量,sismember判断元素是否存在,srandmember随机获取元素,spop随机移除元素,smembers获取所有元素。此外,还支持集合运算:sinter/sinterstore求交集,sunion/sunionstore求并集,sdiff/sdiffstore求差集。这些命令时间复杂度从O(1)到O(n)不等,适用于去重、标签系统、社交关系等场景。
2025-08-13 08:30:00
581
原创 Redis 列表类型详解:命令解析与典型应用场景
Redis列表(List)是一个有序的字符串集合,支持两端插入/删除操作,可充当栈或队列角色。核心特性包括:元素有序可重复、支持索引访问、高效执行头部/尾部操作。常用命令分为增删改查四类: 增:lpush/rpush从左右插入,linsert在指定位置插入 删:lpop/rpop弹出两端元素,lrem删除指定值,ltrim裁剪列表 改:lset修改指定索引值 查:lrange获取范围元素,lindex按索引查询,llen获取长度 阻塞操作:blpop/brpop可实现消息队列的阻塞消费 所有操作保持O(1)
2025-08-12 08:30:00
569
2
原创 Redis 哈希类型详解:命令解析与典型应用场景
本文详细介绍了Redis哈希类型的12个核心命令,包括字段操作、批量处理、数值计算等。主要内容涵盖:hset设置字段值、hget获取字段值、hdel删除字段、hlen计算字段数量、hgetall获取所有字段值、hmget批量获取值、hmset批量设置值(已过时)、hexists检查字段存在性、hkeys获取所有字段名、hvals获取所有字段值、hsetnx仅当字段不存在时设置值,以及hincrby对字段值进行增减操作。每个命令均配有语法说明、注意事项和实际应用示例,适合开发者快速掌握Redis哈希数据结构的
2025-08-11 08:30:00
1978
2
原创 深入剖析 CLOSE_WAIT 状态堆积问题:原因、解决方案与最佳实践
本文深入分析了C++程序中TCP连接CLOSE_WAIT状态堆积问题,指出其本质在于未正确调用Socket关闭接口。文章剖析了四种典型错误原因,包括未调用close()、异常未处理、智能指针误用和多线程竞争,并提供了三种C++解决方案:RAII封装类、异常安全处理和智能指针自定义删除器。同时介绍了Linux系统调用的关键细节和诊断工具,最终提出以RAII为核心的最佳实践,强调通过构造函数获取资源、析构函数释放资源的编程范式,确保异常安全性和资源管理的可靠性。
2025-08-07 08:30:00
1312
原创 Redis 字符串类型详解:命令解析与典型应用场景
Redis字符串类型是基础数据结构,支持文本、数字及二进制数据(最大512MB)。常用命令包括: 基本操作:SET(设置值,支持NX/XX选项)、GET(获取值)、MSET/MGET(批量操作) 计数命令:INCR/DECR(原子增减)、INCRBYFLOAT(浮点数运算) 其他功能:APPEND(追加)、GETRANGE(截取子串)、SETRANGE(覆盖部分内容) 字符串类型不仅可存储文本,还能实现计数器等场景,且所有操作均为O(1)时间复杂度。批量命令(如MSET)可减少网络开销,提升性能,但需注意单
2025-08-06 08:30:00
681
原创 setsockopt 与套接字选项全解析:从基础函数到 Nagle 算法与延迟 ACK 交互
本文深入解析了setsockopt函数及其套接字选项的配置与使用。主要内容包括:1)setsockopt函数原型及参数说明;2)核心套接字选项功能解析,如SO_REUSEADDR实现端口复用、SO_LINGER控制连接关闭行为、SO_RCVBUF/SO_SNDBUF优化缓冲区大小等;3)TCP层选项如TCP_NODELAY禁用Nagle算法提升实时性;4)典型选项组合应用场景及代码实现。文章还对比了Nagle算法与延迟ACK机制的区别,为网络编程中的套接字优化提供了实用指导。
2025-08-06 08:30:00
1272
1
原创 Redis 全局命令、数据结构与单线程架构原理
Redis基本全局命令包括keys(匹配查找key)、exists(判断key是否存在)、del(删除key)、expire(设置过期时间)、ttl(查看剩余过期时间)和type(返回key的数据类型)。这些命令支持Redis对外暴露的5种数据结构(string、list、hash、set、zset),每种数据结构在底层有不同内部编码实现,Redis会根据场景自动选择最优编码方式。这些命令为Redis提供了基础的数据管理能力,实现了高效的数据操作和存储。
2025-08-05 08:30:00
1075
原创 初识Redis :核心特性、应用场景 与 Ubuntu 环境部署指南
本文介绍了Redis的基本概念、核心特性及使用场景。Redis是一个开源的内存键值数据库,支持多种数据结构,读写性能可达每秒10万次。其核心特性包括速度快(内存存储+单线程)、丰富的数据结构、持久化功能、主从复制以及高可用性。Redis适用于缓存、排行榜、计数器、社交网络和消息队列等场景。文章还提供了Ubuntu下的Redis安装方法及重要文件说明,包括服务器程序、客户端工具和持久化文件存储位置等关键信息。
2025-08-04 08:30:00
706
3
原创 服务端⾼并发分布式结构演进之路
本文介绍了分布式系统架构的基本概念和演进过程。主要内容包括:1)基本概念部分,解释了应用、模块、分布式、集群等术语的定义与区别;2)架构演进部分,详细梳理了从单机架构到微服务架构的6个发展阶段:单机架构→应用服务集群→读写分离/主从架构→引入缓存→垂直分库→微服务拆分。每个阶段都针对系统面临的不同瓶颈(如性能、数据压力、业务复杂度)提出解决方案,并配以架构示意图说明。文章采用技术术语与生活类比相结合的方式,帮助读者理解分布式系统设计的核心思想与关键技术选型。
2025-08-03 14:34:40
1504
28
原创 【QT】QStandardItemModel 和 QStandardItem 剖析
本文介绍了Qt框架中QStandardItemModel和QStandardItem的核心功能及应用。QStandardItemModel作为数据模型容器,支持表格和树形结构管理,提供行列操作、信号通知和视图交互功能。QStandardItem是基本数据单元,用于存储文本、图标等数据,支持属性设置和层级关系构建。文章通过功能对比表展示了两者差异,并提供了表格创建和树形结构的代码示例,最后演示了如何创建一个简单的表格视图应用。这些组件协同工作,为Qt的数据显示和处理提供了强大支持。
2025-08-01 08:00:00
806
2
原创 C++11 核心工具组件解析:std::mem_fn、std::chrono 与 std::this_thread
本文介绍了C++中编程工具: std::mem_fn,std::chrono,std::this_thread
2025-07-31 08:00:00
954
原创 Cookie、Session、Token究竟区别在哪?如何进行身份认证,保持用户登录状态?
🍑个人主页:Jupiter.🚀 所属专栏:计算机网络学习笔记。
2025-05-21 08:30:00
828
3
原创 【数据结构】深度解析B树、B+树、B*树数据结构特性与MySQL中InnoDB、MyISAM存储引擎差异
B树是一种适合外查找的平衡多叉树,常用于处理大量数据无法一次性加载到内存中的场景。与传统的二叉搜索树相比,B树通过降低树的高度来减少磁盘I/O次数,从而提高查找效率。B树的每个节点包含多个关键字和孩子指针,且所有叶子节点位于同一层。B树的插入操作通过分裂节点来保持平衡,确保树的高度尽可能低。B树的查找、插入和删除操作的时间复杂度均为O(logN),适合处理海量数据。相比哈希表,B树在极端情况下不会出现冲突问题,适合需要频繁查找和插入的场景。
2025-05-20 08:30:00
1167
原创 【数据结构】跳表的原理,优点以及实现
跳表(skiplist)是一种基于有序链表的高效查找结构,通过多层链表的设计,将查找时间复杂度优化至O(log n)。跳表通过在每层链表中随机增加节点层数,避免了严格的层级比例关系,简化了插入和删除操作。与平衡搜索树相比,跳表实现更简单,空间消耗更低;与哈希表相比,跳表支持有序遍历,空间消耗略小,但查找速度稍慢。跳表的实现包括节点结构、查找、插入、删除等操作,通过随机层数生成和节点连接,确保其高效性。
2025-05-19 08:30:00
765
2
原创 【数据结构】图的单源以及多源最短路径问题(Dijkstra算法,Bellman-Ford算法,Floyd-Warshall算法)
🍑个人主页:Jupiter.🚀 所属专栏:高阶数据结构。
2025-05-17 08:30:00
1067
1
原创 【数据结构】图 -- 邻接矩阵/邻接表
本文介绍了图的基本概念及其存储结构。图由顶点集合和边集合组成,分为有向图和无向图。完全图、邻接顶点、顶点的度、路径、简单路径与回路、子图、连通图、强连通图和生成树是图的重要概念。图的存储结构主要有邻接矩阵和邻接表两种方式。邻接矩阵通过二维数组表示顶点间的关系,适合快速判断顶点是否连通,但在稀疏图中浪费空间。邻接表则使用数组和链表结合的方式,适合存储稀疏图,节省空间。文章还提供了邻接矩阵的代码实现,展示了如何通过模板类来构建图结构。
2025-05-15 08:30:00
897
原创 并查集原理及实现:路径压缩,按秩合并
并查集(Union-Find Set)是一种用于管理不相交集合的数据结构,支持查找、合并和计数操作。其核心思想是通过数组表示集合,数组下标对应元素编号,数组值表示父节点或集合大小。查找操作通过路径压缩优化,将节点直接指向根节点,缩短查询路径;合并操作通过按秩合并优化,将较矮的树挂到较高树的根下,避免树过高。并查集广泛应用于图论、网络连接等问题,能够高效处理集合的合并与查询。
2025-05-14 13:12:44
447
2
原创 【Qt】带你玩转 Qt 输入类控件(Line Edit,Text Edit ,Combo Box ,Spin Box, Date Edit , Time EditDial,Dial,Slider .)
【Qt】带你玩转 Qt 输入类控件(Line Edit,Text Edit ,Combo Box ,Spin Box, Date Edit , Time EditDial,Dial,Slider .)
2025-04-18 09:00:00
1233
2
原创 【Qt】常用显示类控件概述(Label、LCD Number、ProgressBar、Calendar Widget)
【Qt】常用显示类控件概述(Label、LCD Number、ProgressBar、Calendar Widget)
2025-04-17 09:04:20
1120
4
原创 【Qt】Qt 按钮控件详解,PushButton,RadioButton,CheckBox,ToolButton
🍑个人主页:Jupiter.🚀 所属专栏:QT。
2025-04-16 14:30:51
1185
2
原创 【Qt】Qt环境的搭建
Qt 是⼀个 跨平台的 C++ 图形化界⾯应⽤程序框架。它为应⽤程序开发者提供了建⽴艺术级图形界⾯所需的所有功能。它是完全⾯向对象的,很容易扩展。Qt 为开发者提供了⼀种基于组件的开发模式,开发者可以通过简单的拖拽和组合来实现复杂的应⽤程序,同时也可以使⽤ C++ 语⾔进⾏⾼级开发。Qt Creator 是⼀个轻量级的跨平台集成开发环境(IDE),专为使⽤ Qt 框架进⾏应⽤程序开发⽽设计。
2025-04-14 12:50:04
1192
原创 HTTPS协议安全机制深度解析:从加密原理到防御策略
`什么是HTTPS协议``常见的加密方式``数据摘要 && 数据指纹``HTTPS 的工作原理解析``方案 1 - 只使用对称加密``方案 2 - 只使用非对称加密``方案 3 - 双方都使用非对称加密``方案 4 - 非对称加密 + 对称加密``中间人攻击 - 针对上面的场景``证书``方案 5 - 非对称加密 + 对称加密 + 证书认证`
2025-04-14 09:22:10
998
39
原创 BoostSiteSeeker项目实战
在信息爆炸的时代,搜索引擎成为获取信息的核心工具。为了深入理解其技术原理并锻炼编程能力,我启动了BoostSiteSeeker项目。该项目旨在将理论知识与实际操作结合,夯实自己的编程基础并积累项目经验。可以发现:主流的搜索引擎都是根据用户输入的关键词,将索引到的内容,以一个一个的网页返回给用户(包括三个要素:)。BoostSiteSeeker 是一个基于 boost 文档的站内搜索引擎,当用户在页面上输入查询词后,就会快速的查询出相关的 boost 在线文档,根据权重构建网页返回给用户。项自实现: 项目
2025-04-01 12:59:57
1060
71
原创 C++11多线程,锁与条件变量
C++11线程库简介 本文介绍了C++11标准库中的线程相关组件,包括thread类、原子操作库和锁管理工具。thread类支持线程创建但不允许拷贝,可通过函数指针、lambda或函数对象提供线程函数。线程参数默认值拷贝,需使用std::ref传递引用。原子操作库(atomic)提供线程安全的变量操作,避免加锁开销。lock_guard和unique_lock采用RAII机制管理互斥锁,前者简单轻量,后者支持显式锁定/解锁和锁转移。这些工具为多线程编程提供了高效安全的解决方案。<|end▁of▁sen
2025-03-14 17:49:05
1160
71
原创 实测阿里云操作系统控制台:功能、诊断与优化
云服务器ECS为我们提供了试用时长,在免费额度以及试用有效期内,您可以调整以下配置:首先是个人版然后是企业版介绍完基本情况,下面让我们进入实操,如何开通云服务器ECS。
2025-03-09 09:39:02
797
7
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人