- 博客(1924)
- 收藏
- 关注
原创 MySQL - 进阶篇 - 3.3 ORDER BY 优化
MySQL排序优化实战指南:从理论到大厂实践 摘要:本文深入解析MySQL ORDER BY优化策略,涵盖核心理论和企业级实践。通过实验演示索引对排序性能的影响,揭示Using index和Using filesort的本质区别。重点分析升降序混合排序、最左前缀法则等关键场景,并给出BAT等大厂的实战优化案例。文章提炼出排序优化的黄金法则:让数据访问路径与索引设计保持一致,通过降序索引、覆盖索引、方向一致性索引等手段,将排序操作从逻辑计算转化为物理顺序扫描。最终实现从毫秒级到微秒级的性能飞跃。
2025-10-11 16:01:53
781
原创 新所得库 - 从环境错配到成功运行:VSCode 源码自托管复盘
摘要: VSCode源码自托管的关键在于解决Node版本、权限和启动顺序问题。核心步骤包括:1) 使用.nvmrc指定Node 22.17.0版本;2) 管理员终端运行npm ci安装依赖;3) 先执行npm run watch生成产物,再启动./scripts/code.bat。预编译二进制文件(如rg.exe)可降低环境复杂度。经验表明,90%的问题源于版本错配,其余10%通过权限管理和正确顺序解决。提供了一键体检脚本快速验证环境配置,强调版本统一、权限保障和流程顺序是成功构建的三大要素。
2025-09-30 16:46:28
1004
原创 TypeScript 入门篇 - Day01 - 初识 TypeScript:类型系统与编译运行
文章摘要: TypeScript是JavaScript的超集,通过引入静态类型系统和编译检查提升代码安全性与可维护性。安装后可通过tsc命令编译TS文件为JS,核心优势包括编译时类型检查(如避免参数类型错误)和IDE智能提示。大厂(如阿里、字节)广泛采用TS以解决大规模协作中的接口规范问题,典型案例显示TS能预防字段拼写错误、类型混淆等JS运行时风险。其核心价值在于用编译时约束换取更高的运行时稳定性,尤其适合复杂项目。
2025-09-30 16:07:53
748
原创 MySQL - 进阶篇 - 3.2 主键优化
摘要:InnoDB存储引擎中,主键顺序插入性能优于乱序插入,因其采用索引组织表结构,数据按主键顺序存储。顺序插入只需追加到末页,而乱序插入可能触发页分裂,导致数据移动和碎片化,降低性能。优化建议:使用短小的自增主键(AUTO_INCREMENT),避免UUID或长业务字段,减少页分裂和空间浪费。删除操作会标记数据而非物理删除,当页利用率低于50%时触发页合并。大厂实践中,主键设计需遵循"短小、顺序、稳定"原则,电商订单表等高频写入场景尤其需要避免乱序主键。
2025-09-30 15:32:24
895
原创 MySQL - 进阶篇 - 3. SQL优化
MySQL插入数据性能优化主要围绕减少开销和顺应存储结构展开。对于小规模写入,建议使用批量insert(多值插入)结合手动事务控制,减少SQL解析和网络交互次数。大规模导入时推荐LOAD DATA,可绕过SQL层解析,性能提升显著。主键顺序插入能避免B+树频繁分裂,提升写入效率。大厂实战中,日志归档、订单系统等场景普遍采用批量事务+顺序主键组合,对千万级数据会临时关闭索引、分批提交。核心优化思路是批量化、顺序化和减少重复日志写入。
2025-09-30 15:15:31
977
原创 MySQL - 进阶篇 - 2.6 索引使用
MySQL索引使用与优化摘要 索引效率验证 主键索引查询千万级数据仅需毫秒 非索引字段查询耗时20秒以上 建立索引后查询性能提升数千倍 关键原则 最左前缀法则:联合索引必须从左到右使用 范围查询会截断后续索引使用 常见索引失效场景:列运算、字符串无引号、模糊头部匹配、OR条件不全等 高级优化技巧 SQL提示(USE/IGNORE/FORCE)可干预优化器选择 覆盖索引避免回表,提升查询性能 前缀索引优化长字符串字段存储和查询 大厂实战经验 高频查询字段必须建立索引 联合索引优于单列索引 避免SELECT*,
2025-09-25 17:40:48
961
原创 MySQL - 进阶篇 - 2.5 SQL性能分析
MySQL性能分析四步法:1. 通过SHOW STATUS分析SQL执行频率,判断读写压力分布;2. 配置慢查询日志捕获执行超时SQL;3. 使用PROFILE分析SQL各阶段耗时;4. 通过EXPLAIN解读执行计划,检查索引使用情况。这套方法从宏观到微观逐步定位性能瓶颈,大厂实践中会结合监控告警、采样分析等手段,最终可能采取索引优化、SQL改写或架构调整等解决方案。核心思路是:先找到问题SQL,再分析执行细节,最后针对性优化。
2025-09-20 20:10:32
924
1
原创 MySQL - 进阶篇 - 2.4 索引语法
本文摘要: MySQL索引语法与实践解析,涵盖索引创建(普通/唯一/联合索引)、查看与删除操作。通过用户表案例演示索引的实际应用,强调索引设计需平衡查询效率与写入性能。大厂实战经验:控制索引数量、善用联合索引、实施冷热分层策略并定期巡检冗余索引。面试题解析索引设计原则与风险控制,场景题展示电商、日志等系统的索引优化方案。核心观点:索引是性能优化的利器,但需谨慎使用以避免过度开销。
2025-09-20 16:58:03
912
原创 MySQL - 进阶篇 - 2.3 索引分类
MySQL索引分类与优化策略 摘要:MySQL索引主要分为主键索引、唯一索引、常规索引和全文索引四种类型。在InnoDB引擎中,索引又可分为聚集索引(存储完整数据)和二级索引(存储主键值)。索引优化关键在于理解回表查询机制,即通过二级索引查找后需回到聚集索引获取完整数据的过程。B+Tree索引结构通常保持2-3层高度,即使数据量达千万级也能保持高效查询。实际应用中,可通过覆盖索引、索引下推等技术减少回表操作,大数据场景还需结合分库分表、冷热数据分层等架构手段。大厂实践中,电商系统常使用联合索引优化订单查询,
2025-09-20 16:45:57
895
原创 MoE 混合专家模型:把参数做“大”、把计算做“少”
MoE(混合专家)模型通过稀疏激活机制实现参数增长而计算量不变:每层部署多个专家子网络,每个token仅激活少数专家(Top-1/Top-2),配合容量因子和负载均衡策略确保稳定训练。其核心挑战在于路由分发带来的All-to-All通信开销,需结合专家并行、张量并行等技术优化系统实现。典型应用包括SwitchTransformer(Top-1)和GLaM(Top-2),在万亿参数规模下保持计算效率,适合通用预训练场景。工程落地需平衡路由稳定性、通信成本与模型容量,从保守配置(Top-2+CF=1.25)逐步
2025-09-16 17:08:29
1108
原创 内网穿透说明
摘要: 内网穿透是解决第三方支付平台回调问题的关键技术。由于第三方位于公网,而项目网关和支付微服务运行在内网(NAT后),回调请求无法直接到达内网服务。通过Cpolar建立反向隧道,将公网域名映射到本地端口,实现回调链路打通。相较于轮询(延迟高、负载大),回调模式时效性更优,但需配置内网穿透。配置步骤包括:注册Cpolar、授权Token、启动服务、更新Nacos回调地址。免费域名会变化,需动态同步;生产环境建议使用固定公网入口。核心目标:确保支付回调低延迟、高可靠,同时兼顾开发便捷性与生产稳定性。
2025-09-16 15:28:27
1002
原创 新所得库 - 长文向量化踩坑记:用“摘要”替代“全文”,终结 NoneType
本文总结了在向量化处理长文档时遇到的NoneType错误问题及解决方案。当文档超长时,直接使用全文进行向量化会导致嵌入模型返回None,进而引发错误。修复方案改为优先使用LLM生成的摘要进行向量化,并添加了"无摘要则截取前1000字"的兜底策略,统一了upload-file和upload-url两条处理链路。改进后,向量化成功率显著提升,日志可观测性增强,RAG检索也更加稳定。文章提出了"链路一致性优先"、"为失败设计"等方法论,并规划了动态切片、
2025-09-03 15:47:06
582
原创 新所得库 - 向量在库却查不出:一次过滤层“伪成功”的破局
摘要: 本文针对向量检索中"成功返回但无结果"的问题进行了深度剖析。通过案例复现,发现根本原因在于:1)过滤字段误用拼接字符串而非结构化查询;2)稀疏向量格式不符(数组而非对象);3)查询参数名错误。修复方案包括:改用结构化过滤条件、修正稀疏向量格式、调整参数命名。验证表明修复后正/负例均符合预期,RAG返回约369字符的有效上下文。总结出关键方法论:坚持结构化查询、接口契约先行、重视负例验证,并强调"格式即语义"的重要性。文章提供了可直接套用的修复代码和测试脚本,为
2025-09-03 15:46:09
655
原创 新所得库 - 分区是假象,类型才是真凶:一次 DashVector 向量“失踪案”的严谨复盘
摘要: 线上脚本发现向量"写入后查询不到"的异常,初步怀疑分区不一致,但排查发现读写均在默认分区。进一步分析发现两脚本对API返回类型的处理不同:一个直接判断非空,另一个错误地将字符串列表当作字典解析,导致误判。修复方案包括:统一存在性判断逻辑(兼容字符串和字典返回)、优化分区参数传递(避免空字符串干扰)、增强日志追踪。修复后两脚本结论一致,异常消除。根本原因是API响应契约理解错误,而非分区问题。启示:需严格统一内部数据格式,强化防御式编程,并完善监控链路。
2025-08-29 09:44:06
522
原创 新所得库 - 解决 Python 环境安装依赖问题,成功导入 bs4 模块
本文记录了作者在开发爬虫功能时遇到的依赖包导入问题:尽管安装了beautifulsoup4包,但无法导入bs4模块。通过系统排查发现虚拟环境配置不当导致依赖安装路径错误,最终通过重新激活正确虚拟环境并重新安装依赖包解决了问题。文章详细描述了问题排查的全过程,包括环境检查、路径验证和解决方案,强调了虚拟环境配置的重要性,为开发者提供了类似问题的解决思路。
2025-08-21 14:36:41
629
原创 新所得库 - 如何解决 VS Code 扩展开发模式中的 logo 显示空白问题
在本篇博客中,我们将详细描述如何解决 VS Code 扩展开发模式中 logo 显示空白的问题,并最终确保 logo 能够在项目中正确加载显示。
2025-08-03 16:35:15
954
原创 新所得库 - 数据导图功能调试与解决方案
本文记录了开发过程中遇到的"数据导图"功能路由跳转问题及解决方案。当点击菜单时出现"UncaughtError"提示,经排查发现是由于路由配置文件中DataMapRoutes被注释导致路由未注册。通过取消注释相关配置、重启服务后功能恢复正常。文章建议开发时需特别注意路由注册完整性,确保名称唯一且与菜单配置匹配。该案例强调了路由配置检查的重要性,为类似问题提供了参考方案。(150字)
2025-07-28 15:56:45
649
原创 新所得库 - 深入调试与配置优化:解决SSO登录失败的详细分析
摘要:本文详细记录了SSO登录接口调试过程,发现登录失败主要源于两个问题:测试环境配置与生产环境账号不匹配,以及登录凭据错误。通过创建正确的.env配置文件、重启服务加载新配置,并使用debug_sso_login.py等调试脚本验证,最终实现成功登录并获取有效JWT token。调试过程强调了环境配置的重要性、调试工具的使用技巧,以及API路由配置的注意事项,为类似问题提供了解决方案和经验参考。
2025-07-25 10:53:26
1126
原创 MySQL基础篇之 6. 事务
事务是数据库管理系统(DBMS)中的一个重要概念,它是由一组操作组成的不可分割的工作单位。事务的关键特点是:要么所有操作都成功(提交事务),要么所有操作都失败(回滚事务)。这一设计确保了数据在操作过程中始终保持一致性和完整性,特别是在面临并发操作和系统故障时。事务保证了数据库的一致性、可靠性、稳定性和准确性。
2025-07-20 15:41:49
1020
原创 黑马程序员Rddis-基础篇Redis
Redis是一种高性能的键值型NoSQL数据库,支持多种数据结构(字符串、哈希、列表、集合、有序集合等),常用于缓存、实时数据处理等场景。本文介绍了Redis的基础概念、安装配置、常用命令及Java客户端(Jedis和SpringDataRedis),并对比了Redis与传统关系型数据库的差异。Redis作为内存数据库,具有读写速度快、支持持久化等特性,适合高并发场景。通过实际案例展示了Redis在电商、排行榜等业务中的应用,并解答了分布式锁、主从复制等常见面试问题。
2025-07-19 20:12:05
1120
原创 SpringCloud微服务 Day11 - 高可用与高并发:如何设计高可用的微服务系统并有效应对服务雪崩与数据一致性问题
本文系统梳理了微服务面试中的核心知识点,涵盖SpringCloud组件、服务注册发现、分布式事务、负载均衡、服务保护等关键内容。重点解析了:1)SpringCloud常用组件(Eureka/Nacos/Ribbon/Sentinel等)及其作用;2)CAP理论与BASE思想在分布式系统中的应用;3)主流分布式事务解决方案(AT/TCC模式)的实现原理与比较;4)Nacos分级存储模型与Eureka的差异;5)负载均衡算法(轮询/随机/集群优先)实现机制;6)服务保护策略(熔断/限流/降级)及算法原理(滑动窗
2025-07-15 21:34:17
351
原创 SpringCloud 微服务 Day10 - 高效缓存与分布式锁管理:利用 Redis 提升系统性能与稳定性
本文摘要: Redis高级技术专题包含主从集群、哨兵机制、分片集群等核心内容,帮助开发者应对企业级需求。主从集群通过读写分离提升并发能力,哨兵机制实现故障自动转移,分片集群解决海量数据存储问题。Redis数据结构解析了SkipList等底层实现原理,内存回收策略包括惰性删除和周期删除两种方式。缓存专题详细讲解了穿透、雪崩、击穿三大问题的解决方案,如布隆过滤器、互斥锁和逻辑过期等。文章还分析了缓存一致性难题,推荐先更新数据库再删除缓存的策略,并设置过期时间作为兜底方案。
2025-07-14 10:34:48
1000
原创 SpringCloud微服务 Day09 - 高效日志分析与实时数据聚合:利用Elasticsearch优化查询与聚合性能
摘要:本文详细介绍了Elasticsearch的数据搜索功能实现。首先讲解了DSL查询语法,包括叶子查询(match、term等)和复合查询(bool等),以及排序、分页、高亮等功能的实现方式。然后通过RestClient演示了Java API的调用方法,与DSL语法一一对应。文章还介绍了聚合分析功能,包括桶聚合和度量聚合的实际应用。最后给出企业级实战作业,要求实现商品搜索接口和过滤条件聚合功能,并探讨了竞价排名等高级应用场景。全文通过理论结合实践的方式,帮助读者掌握Elasticsearch的核心搜索技术
2025-07-13 16:46:37
1320
原创 SpringCloud微服务 Day08 - 高效商品搜索与实时日志分析:利用倒排索引提升查询性能
摘要:电商平台黑马商城原有商品搜索功能基于数据库模糊查询,存在性能瓶颈和功能单一问题。本文介绍了如何通过Elasticsearch重构搜索模块,包括:1)Elasticsearch核心优势(分布式架构、倒排索引、实时搜索);2)IK分词器对中文处理的支持;3)索引库创建、文档CRUD操作等实现步骤;4)与MySQL的协同应用场景。实践表明,改用Elasticsearch后,在10万级数据量下查询性能提升显著,且支持拼音搜索、同义词匹配等高级功能,为海量数据搜索提供了高效解决方案。(149字)
2025-07-13 10:15:59
1147
原创 SpringCloud微服务 Day07 - MQ高级应用:确保消息可靠性与系统稳定性
摘要:本文深入探讨了消息队列(MQ)在分布式系统中的可靠性保障机制,重点分析了支付场景下订单状态一致性问题。文章从生产者、MQ、消费者三个层面提出了系统解决方案:生产者通过重试机制和确认机制确保消息投递;MQ采用消息持久化和LazyQueue模式防止消息丢失;消费者通过确认机制、重试策略和死信队列处理异常情况。针对延迟消息场景,对比了死信队列+TTL和DelayExchange插件两种实现方式。最后结合电商订单超时案例,详细阐述了如何通过定时任务实现最终一致性保障,并提供了消息幂等性处理的实践方案。全文通过
2025-07-12 16:34:04
993
原创 SpringCloud微服务 Day06 - MQ基础:从同步到异步通讯的转变
文章摘要: 本文探讨了微服务架构中的同步与异步调用方式,重点分析了RabbitMQ在异步通信中的应用。同步调用虽然简单直接,但存在性能瓶颈和级联故障风险;异步调用通过消息队列解耦服务,显著提升系统性能和可靠性。文章详细介绍了RabbitMQ的核心概念(交换机、队列、绑定等)、SpringAMQP的集成使用,以及四种交换机模式(Fanout、Direct、Topic、Headers)的应用场景。通过电商支付等实际案例,演示了如何将同步调用改造为异步模式,解决系统扩展性、性能和故障隔离问题。最后强调消息转换器的
2025-07-12 15:25:27
692
原创 SpringCloud微服务 Day05 - 服务保护与分布式事务:保障系统稳定与数据一致性
微服务保护与分布式事务解决方案 核心问题 业务健壮性问题:服务故障不应影响核心功能(如商品查询失败时仍应展示购物车) 级联失败(雪崩):单个服务故障可能引发整个系统崩溃 分布式事务:跨服务的数据操作需要保证一致性(如下单涉及库存、订单、购物车服务) 解决方案 微服务保护 请求限流:通过Sentinel控制QPS,防止突发流量压垮服务 线程隔离:为不同业务分配独立线程池,避免资源耗尽 服务熔断:当故障率达到阈值时自动熔断,快速失败并降级处理 Sentinel应用:集成限流/熔断规则,实现服务保护 分布式事务
2025-07-11 11:19:03
981
原创 SpringCloud微服务 Day04 - 微服务网关:路由、认证与流量控制
本文介绍了微服务架构中网关技术的核心应用,通过三个关键章节系统讲解了网关解决方案: 网关路由技术 实现前端统一入口访问,替代多服务地址维护 基于SpringCloud Gateway构建动态路由系统 结合Nacos实现路由配置热更新 统一鉴权方案 在网关层集中处理JWT身份验证 通过过滤器实现请求拦截与用户信息传递 利用ThreadLocal实现微服务间用户上下文共享 配置管理优化 使用Nacos集中管理共享配置 实现配置热更新无需重启服务 解决微服务配置重复问题 该方案有效解决了微服务架构中的三大核心问题
2025-07-11 09:21:42
1214
原创 SpringCloud微服务 Day03 - 微服务架构演进:拆分、治理与远程调用
本文系统介绍了微服务架构的核心概念与实践方法。首先对比单体架构和微服务架构的特点,分析微服务在团队协作、系统发布效率等方面的优势。随后详细讲解微服务拆分原则,包括高内聚、低耦合的设计理念,并通过电商平台案例演示商品服务和购物车服务的拆分过程。重点阐述了服务注册与发现机制,使用Nacos实现服务治理,以及通过OpenFeign简化远程调用的方法。文章还涉及服务间通信、负载均衡、连接池优化等关键技术,并探讨了微服务最佳实践,如Feign客户端抽取和日志配置。最后提出思考题,引导读者深入理解微服务架构的实际应用场
2025-07-10 22:17:59
1159
原创 SpringCloud微服务 Day02 - Docker在微服务中的应用与实际部署
Docker技术入门与实践指南 本文系统介绍了Docker技术及其在项目部署中的应用。主要内容包括: Docker基础概念 镜像与容器的关系:镜像作为模板,容器为运行实例 DockerHub作为官方镜像仓库的作用 核心操作实践 常用命令:创建/管理容器(run、ps、stop等)、管理镜像(build、pull等) 数据卷使用:实现宿主机与容器的数据共享 网络配置:容器互联与自定义网络 项目部署流程 Java应用打包:通过Dockerfile构建包含JDK环境的镜像 前端部署:Nginx代理静态资源 多容器
2025-07-10 16:24:35
1093
原创 SpringCloud微服务 Day01 - MybatisPlus 快速入门与常见功能详解
MyBatisPlus 简化单表 CRUD 开发实践 摘要: MyBatisPlus 作为 MyBatis 的增强工具,通过自动化单表 CRUD 操作显著提升开发效率。核心功能包括: 基础能力:继承 BaseMapper 即可获得完整单表操作,无需编写 SQL 条件构造:QueryWrapper/LambdaQueryWrapper 支持动态条件构建,避免 SQL 硬编码 注解体系:@TableName、@TableId 等注解简化表字段映射配置 类型处理:内置枚举、JSON 等类型处理器,简化特殊字段处理
2025-07-10 11:14:55
860
原创 SpringCloud微服务 Day01 - MybatisPlus 快速入门与常见功能详解 2. 核心功能
MyBatisPlus高级功能解析 MyBatisPlus提供了强大的条件构造器和自定义SQL功能,帮助开发者处理复杂查询和数据操作。核心功能包括: 条件构造器:QueryWrapper用于查询操作,支持动态构建WHERE条件;UpdateWrapper专用于更新操作,灵活设置SET部分 Lambda表达式支持:LambdaQueryWrapper通过方法引用避免字段名硬编码,提高代码安全性和可维护性 自定义SQL:支持复杂SQL和多表关联查询,结合Wrapper动态生成条件 IService接口:封装常见
2025-07-09 16:08:22
724
原创 SpringCloud微服务 Day01 - MybatisPlus 快速入门与常见功能详解 1. 快速入门
摘要:本文介绍了MybatisPlus快速入门与核心功能,通过SpringCloud微服务项目实践演示了如何简化单表CRUD操作。内容涵盖环境配置(JDK11+MySQL)、BaseMapper接口使用、常见注解(@TableName/@TableId)解析,以及分页查询、条件构造器等企业级功能实现。重点展示了阿里巴巴、字节跳动等大厂实战案例中的性能优化方案,包括索引设计、Redis缓存策略和微服务架构下的数据同步机制。最后通过电商推荐系统场景题,系统讲解了从数据库设计到高并发处理的完整解决方案,体现Myb
2025-07-09 15:17:44
687
原创 程序猿之计算机操作系统 — 1.8 存储管理
摘要:存储管理是操作系统的核心功能,负责高效管理内存(RAM)和外部存储设备(HDD/SSD)。其核心任务包括:资源分配优化(分页/分段管理)、数据安全隔离、访问性能提升(虚拟内存/缓存技术),以及存储层次管理(寄存器→缓存→主存→外存)。现代系统还需应对分布式存储、云环境和大数据挑战,通过RAID、冗余备份和智能调度实现高可用性。大厂实践中,结合SSD加速、分布式文件系统(如HDFS)和动态资源分配技术,确保海量数据的高效存取与系统稳定性。
2025-07-03 10:33:13
1033
原创 编译原理 — 第6.2节 三地址代码
三地址代码是编译器中间表示的重要形式,其特点是每条指令至多包含两个操作数,需将复杂表达式拆解为简单指令序列。文章介绍了三地址代码的基本组成(地址和指令)、两种编码方式(符号标号和位置标号),以及三种结构化表示方法:四元式(包含操作符、操作数和结果)、三元式(省略结果字段,通过编号引用)和静态单赋值形式(SSA,每个变量仅赋值一次)。最后通过练习题展示了表达式和赋值语句在不同表示形式间的转换方法,并说明了如何将普通三地址代码转换为SSA形式。
2025-06-30 16:19:05
1022
原创 程序猿之编译原理 第6章 中间代码生成 6.1 语法树的变体
本文介绍了编译原理中中间代码生成的关键环节,重点阐述了语法树与DAG(有向无环图)在表达式表示中的差异与应用。语法树作为基础结构无法避免公共子表达式的冗余,而DAG通过节点共享机制显著优化了空间和计算效率。文章详细解析了DAG的构造方法,包括节点编号、三元组查重和散列表实现技术,并通过多个表达式案例对比展示了DAG的结构优势。此外,还探讨了DAG在现代工业编译器(如LLVM、V8等)中的实际应用场景,以及在自研编译器开发中的核心价值。最后通过面试题和场景题,进一步验证了DAG在中间代码优化、寄存器压力缓解等
2025-06-30 15:45:32
854
原创 程序猿之计算机操作系统 — 1.6 进程管理
《进程管理:操作系统并发控制的核心机制》摘要: 进程是现代操作系统资源分配与调度的基本单位,将静态程序转化为动态执行实体。进程包含独立程序计数器、内存空间和系统资源,与线程形成资源分配与CPU调度的两级体系。操作系统通过进程控制块(PCB)管理进程生命周期(创建、就绪、运行、阻塞、终止),实现多任务并发执行。在大厂实践中,进程模型支撑了微服务隔离、容器化部署和弹性调度等场景,如Android应用进程隔离和AI模型并行推理。从系统开发角度看,进程管理模块的构建标志着操作系统从单任务裸机到多任务系统的质变,通过
2025-06-30 15:11:04
711
原创 程序猿之计算机操作系统 — 1.5 操作系统的执行
《计算机操作系统的执行机制》摘要: 现代操作系统采用中断驱动机制,通过中断和陷阱(软件中断)响应各类事件。为确保系统安全稳定,操作系统采用双重模式(用户模式/内核模式)区分执行权限,并通过模式位实现硬件级保护。定时器机制通过周期性中断防止程序独占CPU,为多任务调度提供基础支撑。这些机制共同构成了操作系统控制程序执行、实现资源共享与系统保护的核心技术基础,其中双重模式管理硬件资源访问权限,定时器则确保CPU资源的公平分配。
2025-06-26 21:14:27
660
原创 程序猿之计算机操作系统 — 1.4 操作系统的结构
摘要:本文探讨操作系统结构及其核心功能,重点分析多道程序设计、分时系统和资源调度机制。操作系统的本质是为程序提供并发运行环境,通过作业池、CPU调度和虚拟内存等技术提升资源利用率。现代操作系统还需管理文件系统、设备I/O及进程同步,其结构设计直接影响系统性能与用户体验。后续章节将详细讨论这些机制的实现原理。
2025-06-25 08:23:10
1054
原创 程序猿之计算机操作系统 — 1.3 计算机系统的体系结构
本文介绍了计算机系统的四种主要体系结构:单处理器系统(单一CPU执行所有任务)、多处理器系统(提升吞吐量和可靠性,分为对称SMP和非对称AMP)、集群系统(多节点协同工作,提供高可用性)以及Beowulf集群(低成本高性能计算架构)。重点阐述了每种结构的特征、优势及实际应用场景,如嵌入式设备、云服务器、AI训练等。文章从理论和实践两个维度,分析了不同架构在操作系统设计、资源调度和并行计算方面的关键考量。
2025-06-24 22:07:46
1098
数值计算方法实验报告3
2023-05-14
数值计算方法实验报告四
2023-05-14
数值计算方法实验报告二
2023-05-14
华北水利水电大学数值计算方法实验报告实验一
2023-05-14
需要道路行人检测系统数据集
2025-04-01
我想问第二个问题在写页面的时候为什么要有换行和照片莫名奇妙跑到超链接上
2024-07-19
离散数学的集合的覆盖和划分吗?
2024-06-30
整数划分的递归关系是怎么讨论出来的
2023-03-02
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅