自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 揭秘Linux进程管理核心:从PCB到fork机制

本文系统阐述了进程的概念与管理机制:进程是运行的程序,由内核通过task_struct(PCB)描述和管理,包含PID、状态、上下文、资源指针等信息。操作系统用双向链表组织进程,通过/proc文件系统或ps命令查看进程。fork()创建子进程,采用写时拷贝(COW)优化内存使用,父子进程共享代码但独立数据。进程状态包括运行(R)、可中断睡眠(S)、不可中断睡眠(D)、停止(T)、僵尸(Z)等,其中僵尸进程需父进程回收。内核使用list_head链表结构高效管理进程,结合container_of宏实现链表节点

2026-11-01 18:06:55 177 6

原创 揭秘计算机核心:冯诺依曼架构与操作系统底层原理

冯诺依曼体系架构以输入、输出、存储、运算器和控制器五大部件为核心,强调数据与指令存于内存,CPU仅访问内存。为提升效率,采用分级存储结构,缓存与内存协同工作。操作系统作为软硬件中介,通过进程、内存、文件、设备管理实现资源调度与抽象,向上提供系统调用接口,由库函数封装简化使用。系统调用是内核服务入口,保障安全与效率,体现“管理即数据结构”的核心思想。

2026-10-27 22:50:34 268 5

原创 GDB调试三绝技:变量监控、动态修改与条件断点

本文系统介绍了Git版本控制与GDB调试的核心知识。Git部分涵盖常用命令(git add、commit、push)、.gitignore文件作用及冲突解决策略;GDB部分重点讲解编译调试模式(-g选项)、断点设置、单步执行、堆栈跟踪及变量监控技巧。结合实例演示了watch监测变量、setvar动态修改变量值、条件断点等高级调试方法,助力高效定位代码问题。

2026-10-19 18:48:23 125

原创 进度条原理揭秘:回车换行与缓冲区深度解析

如果没有缓冲区:CPU 输出 1 个字节,就直接写给硬盘 / 屏幕 → 每写一次就要调用一次 IO,大量时间浪费在等待硬件,效率极低。那么如果想要立刻刷新的话,可以再printf后加上fflush(stdout):手动强制刷新缓冲区,这样也可以直接输出字符串。在printf时如果不加换行符的话,内容会在缓冲区暂存,在显示器上先休眠1s再输出,这也是进度条没反应的原因。的作用是刷新缓冲区,立刻将缓冲区的数据输出到屏幕上,如果不加这一句,则动态效果消失。先将光标移动到本行最左,printf会覆盖现有输出,

2026-10-16 22:17:47 61 1

原创 Makefile 入门实战:理解依赖关系、变量与通配符 %

本文系统介绍Makefile的语法与应用,涵盖目标、依赖、命令的格式要求,重点讲解.PHONY伪目标的作用及依赖关系推导机制。通过变量定义、自动变量(如$@、$^、$<)和模式规则,实现编译流程的自动化与复用。结合wildcard函数与shell命令,可高效管理多文件项目,提升构建效率。

2026-10-10 19:23:07 120 3

原创 GCC编译四步揭秘:从源码到可执行文件

GCC将C源码编译为可执行文件,经历预处理(展开头文件、宏替换、条件编译)、编译(生成汇编代码)、汇编(生成目标文件.o)和链接(合并目标文件与库,生成可执行程序)四阶段。支持静态链接(代码复制到可执行文件,独立运行但体积大)和动态链接(运行时加载库,节省空间但依赖系统库)。通过ldd可查看动态依赖库,-E、-S、-c等选项分别控制预处理、编译、汇编阶段输出。

2026-10-06 22:30:37 238 3

原创 一文吃透 Linux 软件安装与 Vim 编辑器(含 Ubuntu/CentOS 实操)

本文系统介绍了Linux下软件包安装的三种方式,重点讲解基于yum/apt的包管理器使用,涵盖Ubuntu与CentOS的命令差异、国内镜像源优势及配置方法。同时详细解析vim编辑器的三模式操作、常用命令与末行模式功能,并提供实用技巧与常见问题(如.swp文件处理)解决方案。最后介绍vim配置文件位置与个性化设置,帮助用户高效完成系统管理与开发任务。

2026-10-06 21:17:13 127 3

原创 一文吃透 Linux 权限管理!rwx / 数字权限 /umask/ 粘滞位,带 Ubuntu 完整实操

本文系统讲解Linux文件权限机制,涵盖root与普通用户区别、三类权限(rwx)及符号/数字表示法,重点解析目录访问(需x权限)、文件读写(需r/w权限)的底层逻辑,并通过chmod、chown、chgrp等命令演示权限修改。结合umask掩码控制新建文件默认权限,阐明粘滞位在公共目录中保障安全的关键作用,全面揭示权限管理的核心原理与实践应用。

2026-10-03 13:44:01 216 1

原创 Shell 原理与 Linux 权限:归档压缩 tar、远程传输 scp、su/sudo 切换用户实操

Shell 是用户和 Linux 内核之间的命令解释器,充当桥梁:接收你输入的命令,交给内核执行,再把执行结果返回给你。

2026-09-30 22:00:11 197 1

原创 Linux 命令从入门实操:cat/less/head/tail,搞懂管道、find/grep、zip 压缩

本文系统梳理了Linux常用命令:文件查看(cat/tac/nano/more/less/head/tail)、数据流转(管道|)、时间日历(date/cal)、搜索工具(find/whereis/grep)、系统监控(top)及压缩解压(zip/unzip、tar)。重点介绍CTRL+R快速调用历史命令,提升操作效率。内容涵盖命令语法、实用选项与场景应用,适合初学者快速掌握核心技能。

2026-09-28 20:22:33 200 1

原创 一文读懂 Linux 底层逻辑:指令本质、标准流、输出重定向、cp/mv 详解

Linux核心逻辑是“一切皆文件”,指令本质为可执行程序,分为内置与外置。常用命令如ls、echo、cat等通过重定向实现输入输出控制。man用于查阅手册,cp、mv实现文件复制与移动(需注意-r递归),alias可自定义命令别名。标准流(stdin/stdout/stderr)与设备文件(如/dev/pts/N)统一管理,体现文件抽象思想。

2026-09-27 17:34:12 411 1

原创 一文入门 Linux:根目录、绝对路径、相对路径,基础操作命令详解

本文介绍了Linux常用基础指令:ls(列表文件,支持-l、-a等选项)、cd(切换目录,支持相对/绝对路径及~、-等快捷方式)、mkdir(创建目录,可递归创建)、touch(创建空文件或更新时间戳)、rm与rmdir(删除文件与空目录,需谨慎使用)。通过实例演示了文件系统结构、路径概念及操作技巧,帮助初学者快速掌握Linux基本操作。

2026-09-26 21:54:17 218 1

原创 二叉树-堆

本文摘要:文章详细介绍了顺序存储二叉树和链式结构二叉树的相关概念与实现。首先阐述了顺序存储二叉树的性质(父子节点索引关系、堆的分类),并给出了堆的结构定义和基本操作实现(初始化、销毁、插入、删除等)。重点讲解了堆排序算法及其优化思路,包括向上/向下调整算法的时间复杂度分析。随后介绍了TOP-K问题的堆解决方案。最后讲解了链式二叉树的节点结构以及前序、中序、后序遍历的递归实现方法。全文涵盖了从基础概念到具体实现的完整知识体系,为理解和应用二叉树数据结构提供了系统指导。

2026-02-15 21:36:38 297 1

空空如也

空空如也

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

TA关注的人

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