自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【操作系统基础】内存基本介绍

操作系统内存管理深度解析:内存管理是连接CPU与外部存储的核心枢纽,负责解决多进程并发时的内存冲突与资源浪费问题。文章从分层存储体系切入,详细解析了寄存器、高速缓存、主存和磁盘的协同工作机制,重点阐述内存管理器的三大核心职责:记录内存状态、按需分配(首次适应/最佳适应/最坏适应算法)和回收合并。同时深入对比了四种内存管理模型(单一连续分配、固定/动态分区、分页、分段)的优缺点,揭示了内存碎片的成因及解决方案。最终指出内存管理的核心目标是在保证安全的前提下,最大化内存利用率以支持多进程并发。

2025-10-11 13:57:49 1156

原创 【操作系统基础】调度

本文系统解析了操作系统调度机制,从基础原理到三大场景(批处理、交互式、实时)的算法选择。批处理系统以吞吐量为目标,采用FCFS、SJF等非抢占式算法;交互式系统注重响应速度,使用轮询、优先级等抢占式调度;实时系统则需满足截止时间要求,采用静态/动态调度策略。文章还探讨了线程调度的差异(用户级/内核级)和策略机制分离思想,并提供场景化选型指南:批处理优选SJF/SRTN,交互式推荐轮询/优先级,实时系统分硬/软场景选择静态/动态调度。理解调度原理对优化系统性能和解决资源竞争问题具有重要意义。

2025-10-11 13:41:57 1061

原创 【操作系统基础】进程间通信

本文深入解析进程间通信(IPC)的核心机制。首先阐述IPC需要解决的三大核心问题:消息传递、资源互斥和执行顺序。重点分析竞态条件与临界区概念,介绍忙等互斥、信号量、互斥量等同步方案,并通过生产者-消费者问题示例说明各种机制的应用场景。文章还探讨了管程、消息传递、屏障等高级同步技术,以及RCU无锁同步机制。最后给出IPC机制选型指南,帮助开发者根据实际需求选择合适的同步方案。

2025-10-11 13:28:03 757

原创 【操作系统基础】线程

本文系统解析操作系统的线程技术,从核心价值、经典模型到具体实现。线程作为轻量级并发单元,通过共享进程资源与独立执行上下文,显著提升系统效率。文章详细对比了多线程与传统方案的优劣,阐述线程状态转换与POSIX标准接口,并以Web服务器为例展示实际应用。针对线程实现方案,深入分析用户空间、内核空间及混合模式的优缺点,为不同场景提供选型建议。最后强调Pthreads的跨平台价值,帮助开发者平衡性能与可移植性。

2025-10-06 18:32:57 797

原创 【操作系统基础】进程

本文系统阐述了操作系统中的进程概念与实现原理。进程作为程序执行的动态实例,通过资源隔离、并发调度和状态管理三大机制实现多任务运行。文章详细解析了进程与程序的区别、生命周期、状态转换(运行/就绪/阻塞)及调度算法,并对比了UNIX的进程树和Windows平等模型的设计差异。同时深入探讨了进程表、上下文切换等底层实现机制,揭示了操作系统通过中断驱动实现进程管理的技术本质。

2025-10-06 18:25:48 882

原创 【操作系统基础】认识操作系统:系统调用

为应用提供抽象接口(如文件操作)和管理硬件资源(如 CPU、内存,对用户透明)。系统调用正是应用程序与内核交互的 “标准化接口”,也是理解操作系统行为的关键。系统调用是操作系统的 “核心接口”,其设计直接决定了应用程序的开发效率与跨平台能力。本文通过read对 UNIX/Linux 开发者:需掌握forkexecve的进程创建逻辑、fd的文件管理方式;对 Windows 开发者:需理解的合并逻辑、句柄的资源管理,以及事件驱动模型;

2025-10-05 18:32:06 1105

原创 【操作系统基础】认识操作系统:程序运行逻辑

本文解析了程序运行的核心逻辑,从内存载入到CPU运算的全过程。程序在内存中以二进制形式存储,通过0/1电路状态表示数据。程序运行需经历"载入内存→CPU执行"两个关键步骤:操作系统加载器将程序从硬盘复制到内存,CPU通过运算单元、寄存器和缓存执行指令。内存不足时,虚拟内存机制通过硬盘空间应急补位。整个过程展现了CPU、内存、硬盘等硬件的协同工作机制,理解这一流程有助于精准定位程序性能问题。

2025-10-04 19:11:46 849

原创 【操作系统基础】认识操作系统:计算机硬件

本文系统解析了计算机硬件的核心组件及其工作原理。CPU作为运算与控制核心,通过指令执行周期完成任务,并采用流水线、超标量等技术提升效率,同时通过内核态/用户态实现权限隔离。芯片技术从单核单线程发展为多核多线程,实现真正并行计算。存储系统采用层次结构,内存与磁盘协同工作,通过缓存和虚拟内存提升性能。I/O设备通过控制器和驱动程序与系统交互,采用中断或DMA方式提高效率。总线作为硬件通信枢纽,采用多总线分层结构满足不同需求。计算机启动过程包括BIOS初始化、引导程序加载和操作系统启动三个阶段。这些组件协同工作,

2025-10-04 18:33:49 808

原创 【操作系统基础】认识操作系统:基本介绍

本文系统介绍了操作系统的核心概念、四种经典结构及应用场景。操作系统作为硬件与软件的桥梁,主要功能包括硬件管理、进程调度、内存分配等。其结构演进从单体系统、分层系统到微内核和客户-服务器模式,体现了从简单到模块化、从效率优先到可靠性的发展趋势。文章还详细分类了9种操作系统类型,包括大型机、服务器、嵌入式等系统,并分析了各自的设计特点与典型应用。最后指出,操作系统结构的选择需根据应用场景对效率、可靠性和扩展性的不同需求进行权衡。

2025-09-29 17:37:56 772

原创 【学习笔记】Linux YUM 包管理器

本文详细介绍了Linux系统中YUM包管理器的使用指南。主要内容包括:1)YUM工作原理,通过客户端-服务器架构自动解决依赖关系;2)YUM源配置方法,涵盖网络源(如阿里云镜像)和本地源(光盘/ISO)的配置步骤;3)核心操作命令,包括软件查询、安装、升级、卸载及软件组管理;4)实用参数和避坑技巧,如仅下载不安装(--downloadonly)、清理缓存(cleanall)等;5)常见问题解决方案,如网络源报错、卸载导致系统异常等。文章通过具体示例和注意事项,帮助用户全面掌握YUM包管理工具的使用。

2025-09-29 14:16:15 974

原创 【学习笔记】Linux 软件包安装

若函数库未在默认路径(/usr/lib# 1. 将自定义函数库(如libmy.so)复制到/usr/lib# 2. 编辑函数库配置文件,添加路径# 在文件中添加:/usr/lib(若已存在则跳过)# 3. 重新加载配置,更新函数库缓存ldconfig # 读取/etc/ld.so.conf,生成缓存文件/etc/ld.so.cache# 4. 验证:查看系统已识别的函数库ldconfig -p | grep libmy.so # 输出libmy.so的路径则成功。

2025-09-29 13:42:27 777

原创 【学习笔记】Linux RPM 包管理指南

文件是 SRPM 包的 “编译配置文件”,包含源码路径、编译参数、安装路径等信息,适合需要修改编译规则的场景。:反向查询 —— 已知系统文件路径,查看它属于哪个 RPM 包(仅支持 RPM 安装的文件)。验证 —— 软件厂商会给合法 RPM 包签名,系统安装厂商证书后,会自动验证包的合法性。命令是核心的软件包管理工具,负责软件的安装、卸载、升级、查询与验证。:若 A 依赖 B,则必须先卸载 A,再卸载 B(否则会报依赖错误)。:查看软件安装的所有文件及路径,支持查询未安装包(预测安装路径)。

2025-09-29 13:35:09 1346

原创 【学习笔记】Linux文件与目录内容查看

默认显示最后 10 行,最常用场景是。

2025-09-29 13:21:34 1225

原创 【学习笔记】Linux 基础增改操作

d高频命令优先掌握:cd、cp、mv、mkdir 是日常操作的 “基石”,需做到 “无需查手册”;危险命令谨慎使用:mv、rm(虽本文未讲,但常与 mv 配合)是 “破坏性” 命令,建议加-i选项(交互式),避免误删 / 误覆盖;链接文件选软链接:软链接支持目录、跨分区,且有明显的->标识,比硬链接更易用,仅在 “需共享 inode 且不跨分区” 时用硬链接;远程拷贝记-r:scp 拷贝目录必须加-r,否则仅复制目录名(无内容);编码转换先确认源编码:用file -i 文件名查看源文件编码(如。

2025-09-27 23:17:39 1011

原创 【学习笔记】Linux 高级文件系统管理

技术核心解决问题关键优势适用场景Quota 配额限制普通用户 / 组的磁盘占用精准控制空间,避免滥用多用户共享服务器(邮件、文件、云存储)LVM 逻辑卷动态调整分区大小(无需卸载)灵活扩容,数据不丢失业务增长快、空间需求不确定的场景(如 Web)RAID 阵列提升性能 + 数据冗余(防硬盘坏)安全(冗余)+ 高效(并行读写)核心数据存储(文件服务器、数据库、存储阵。

2025-09-27 22:57:50 681

原创 【学习笔记】Linux 文件系统管理

b 4096:block 大小设为 4KB。-L "data":设置卷标为 “data”。

2025-09-27 22:39:52 691

原创 【学习笔记】Linux 文本三剑客:awk命令指南

awk 诞生于 20 世纪 70 年代末期,由贝尔实验室的Aho和Kernighan三位工程师设计,命令名即取自三人姓氏首字母。逐行扫描文本,按规则匹配行并执行字段级操作—— 尤其适合处理结构化文本(如 CSV、日志、配置文件),能快速实现数据提取、过滤、统计等需求。内建变量(awk 预定义,直接使用)和自定义变量(用户自行定义),是实现复杂逻辑的基础。命名:由字母、数字、下划线组成,不能以数字开头,且区分大小写(如num和Num是两个变量);赋值:直接用var=val。

2025-09-25 12:44:57 1307

原创 【学习笔记】Linux 文本三剑客:sed 命令指南

摘要: 本文深入解析Linux文本处理利器sed命令,从基础概念到高阶应用。sed作为流编辑器,通过逐行处理文本实现非交互式编辑,支持替换、删除、插入等操作。核心内容包括:1)sed工作原理与语法格式;2)高频命令(如替换s、删除d、插入i/a)的用法与实例;3)数字/文本模式寻址技巧;4)多行处理、保持空间等高级功能;5)20+实用命令示例,涵盖备份、批量替换、过滤日志等场景。掌握sed可显著提升Linux环境下文本处理效率,尤其适合脚本化批量操作。

2025-09-25 12:30:06 1315

原创 【学习笔记】Linux 文本三剑客:grep 命令指南

Linux文本处理三剑客之grep命令详解:本文系统介绍了grep家族的核心用法,包括基础grep命令的正则表达式搜索、常用选项控制,以及衍生工具egrep(扩展正则)和fgrep(固定字符串搜索)的适用场景。文章从命令起源、正则语法、选项参数到高阶技巧,完整解析了grep的搜索逻辑和性能优化方法,特别强调了三种工具在正则支持度和执行效率上的差异(grep速度中等/支持BRE、egrep简化ERE语法、fgrep最快但无正则)。通过典型示例展示了递归搜索、反向匹配、结果统计等实用场景,并提供了与其他命令联动

2025-09-23 19:19:30 1093

原创 【学习笔记】Linux文本编辑器:vim指南

本文全面介绍了Linux下的文本编辑器vi/vim,从安装验证到高级配置。vim作为vi的增强版,具备多窗口编辑、语法高亮等功能。文章详细讲解了vim的三种工作模式(命令、输入、末行模式)、基本编辑操作(查找替换、复制粘贴)、光标移动技巧、可视化模式和多窗口编辑方法。还提供了批量注释、自定义快捷键配置建议,并介绍了通过.vimrc文件定制个性化环境的技巧。最后说明了如何在vim中执行Linux命令,推荐使用vimtutor进行实践学习。全文系统性地覆盖了vim从入门到精通的各项核心功能。

2025-09-23 18:58:53 839 1

原创 【学习笔记】Linux归档压缩解压

需求场景推荐工具 / 格式优点Linux 本地备份 / 传输tar + gzip(.tar.gz)速度快、兼容性好追求更高压缩比(.tar.bz2)体积更小,适合大文件跨 Windows/Linux 传输zip(.zip)无需额外安装,通用处理 Windows 传来的 .rarrarunrar支持 .rar 格式。

2025-09-23 18:44:54 726

原创 【学习笔记】Linux 环境变量详解

变量是计算机中存储可变值的容器,而环境变量是 Linux 系统中专门用于定义运行环境的特殊变量,它为系统进程和用户程序提供了统一的配置入口。每个用户的家目录由HOME变量指定;默认的命令解释器由SHELL变量定义;历史命令记录条数由HISTSIZE和控制。变量名全部大写,这样能与用户自定义的普通变量清晰区分。是一个用户自定义变量(非系统标准),用于指定高性能内存分配器jemalloc的路径。jemalloc能有效减少内存碎片、提升并发性能,常用于 Redis、MySQL 等内存密集型应用。

2025-09-22 11:25:29 963

原创 【学习笔记】Linux文件系统与权限管理

结构基础:单根目录树(/)为核心,FHS 标准规范目录用途;操作核心:绝对路径与相对路径是访问文件的 “地址”;识别方法:颜色直观判断,ls -l和file命令精确识别文件类型;安全防线:所有者、用户组、其他用户的 “读 / 写 / 执行” 权限控制访问边界分类关键点示例/说明层次结构单根目录树所有文件/设备挂载在根目录(/)下/etc/fstabFHS标准规范目录用途(如/bin存放基础命令,/etc存放配置)/var/log存放日志,/usr/bin存放非必需命令路径表示。

2025-09-22 11:16:21 990

原创 从零搭建K8s集群:详细实战指南

本文详细介绍了从零开始搭建Kubernetes集群的全过程。首先在VMware Workstation上创建3台Ubuntu 20.04虚拟机(1主2从),配置静态IP、SSH等基础环境。然后依次安装Docker CE、CRI-Docker和Kubernetes组件,手动完成集群初始化与节点加入。最后通过Ansible自动化脚本实现一键部署,包括配置国内镜像源、安装依赖组件、初始化集群等完整流程。文章还提供了常见问题解决方案,如静态IP配置、版本兼容性检查等注意事项,确保集群部署成功。整个过程兼顾手动操作与

2025-09-22 10:46:48 1152

原创 【学习笔记】文件系统

本文通过模拟一个简易文件系统,深入浅出地讲解了文件在硬盘上的存储原理。首先将硬盘划分为固定大小的块,用块位图管理块使用状态;然后引入inode结构关联文件名与物理位置,解决文件定位问题;针对大文件存储,分析连续存储的碎片问题,提出离散存储和间接索引的解决方案;最后整合超级块、块组描述表等组件,构建出完整的文件系统模型,并详细描述了文件写入流程。文章揭示了现代文件系统如何通过精巧的机制管理存储空间和文件访问。

2025-09-19 18:26:11 951

原创 【学习笔记】计算机操作系统进化史:从穿孔卡到云时代

摘要:操作系统发展经历了机械计算、电子计算机和现代操作系统三个阶段。早期计算机依靠穿孔卡片和插线板操作,效率低下。20世纪60年代末,Unix在贝尔实验室诞生,其开源理念和C语言重写推动了跨平台发展。微型计算机时代,CP/M和MS-DOS相继主导市场,图形界面由施乐首创后被苹果和微软商业化。Linux结合GNU工具形成开源操作系统,与Windows和Unix形成三足鼎立。关键人物如冯·诺伊曼、汤普森和托瓦兹的贡献,以及POSIX等标准的建立,共同塑造了现代操作系统格局。(149字)

2025-09-19 17:09:30 1121

空空如也

空空如也

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

TA关注的人

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