
记录Linux学习历程
文章平均质量分 94
本栏记录学习0基础学习Linux时的知识点以及遇到的问题。
森画
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【Linux】深入理解Linux文件系统:从C接口到内核设计哲学
在计算机系统中,文件由内容数据和元数据属性共同构成。文件状态存储位置管理方式未打开文件磁盘存储介质文件系统通过inode管理已打开文件内存内核通过file结构体管理所有文件操作本质上都是进程与文件系统的交互打开文件需要将文件属性加载到内存文件内容采用按需加载策略(延迟加载)研究文件系统本质是研究进程和文件之间的关系(文件是由进程打开的);未打开的文件存在磁盘上(存储介质),文件要被打开(属性)必须先要加载到内存;把oldfd复制到newfd。原创 2025-04-18 18:30:00 · 743 阅读 · 1 评论 -
【Linux】进程控制:创建、终止、等待与替换全解析
本文将用最直白的语言带你掌握Linux进程管理的四大核心操作!包含大量代码示例与图解,建议边看边动手实践!本文篇幅较大,设计知识点众多,所以有几个点并没有深入讨论,如核心转储、exel接口函数中的环境变量表如何使用等,这些内容会在后续学习中逐渐补全。原创 2025-04-09 18:59:26 · 781 阅读 · 0 评论 -
【Linux进程概念】从进程地址空间角度深入理解fork()与写时拷贝
之前我们在学习第一个系统调用函数fork()的时候,学到了fork()函数在return的时候发生了写时拷贝,因此会返回两个,甚至多个值(取决于创建几个子进程),但用来接收这些值的id变量只有一个,它是怎么做到一个变量却拥有不同的值呢?进程地址空间是操作系统为每个进程分配的 虚拟内存视图,使进程认为自己独占整个物理内存,通过内核的 mm_struct 结构体管理代码段、堆、栈等区域划分,配合页表映射物理内存,实现内存隔离、动态调整(如堆栈扩展)和写时拷贝保护机制,确保进程独立性、安全性及物理内存高效利用。原创 2025-04-01 19:07:57 · 564 阅读 · 0 评论 -
【Linux】从开发到系统管理深入理解环境变量
环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数。掌握环境变量的正确使用方式,将显著提升开发效率和系统管理能力。建议读者通过命令深入学习相关机制,并在实践中不断探索环境变量的高级用法。原创 2025-03-24 19:54:37 · 999 阅读 · 0 评论 -
【Linux】深入理解Linux进程状态与优先级管理
在Linux系统下,系统通过PCB的方式管理进程(struct_task),在进程还未获得CPU资源时处于等待就绪状态,排队依次被CPU执行。在本文中我们将会了解到进程还有哪些状态,以及Linux系统下的实现方式是什么样的。通过本文的学习,读者应该能够全面理解Linux进程状态转换机制,并掌握基本的进程管理技巧。原创 2025-03-20 18:33:07 · 831 阅读 · 0 评论 -
【Linux】深度解析Linux进程管理:从进程PCB到创建子进程的全景指南
在Linux操作系统中,进程管理是操作系统核心功能模块之一,其本质是通过地址空间抽象与动态资源调度实现多任务并发执行。本文将从进程控制块(task_struct)、内存管理单元(MMU)到调度算法(CFS)的实现机制展开分析,揭示操作系统如何通过精妙的数据结构与算法设计,构建高效可靠的进程管理体系。承上启下:上篇最后提到了操作系统是通过先描述,再组织的方式管理资源,同样的,操作系统也是以同样的方式进行进程的管理。原创 2025-03-18 19:06:44 · 1062 阅读 · 0 评论 -
【Linux】冯诺依曼体系与操作系统底层原理详解!新手必看攻略
冯诺依曼体系结构(Von Neumann Architecture)是现代计算机设计的基础框架,由数学家约翰·冯·诺依曼(John von Neumann)于1945年提出。其核心思想是将程序和数据存储在同一存储器中,并通过指令执行机制完成计算任务。原创 2025-03-13 19:46:51 · 740 阅读 · 0 评论 -
【Linux】新手必看!10分钟掌握Makefile自动化编译秘籍
在拥有数千个源文件的大型工程中(比如Linux内核包含超过6万个文件),手动编译无异于用勺子舀干大海!通过本文你将掌握:✅ Makefile如何实现智能增量编译(节省90%编译时间)✅ GDB调试器核心用法预告(文末有学习路线图)✅ 独家优化技巧:多线程编译加速(make -j至此,本篇介绍了make/makefile的概念与用法,较为深入地讨论了makefile中的语句用法,以及make时产生的问题原由。原创 2025-03-12 20:49:20 · 672 阅读 · 0 评论 -
【Linux】GCC编译器入门指南(新手必看+附实战案例)
GCC(GNU Compiler Collection)诞生于1987年,最初仅支持C语言,现已发展为支持C++、Fortran、Ada等十多种语言的超级编译器套件。它凭借开源免费、跨平台支持和高度可定制的特点,成为Linux开发者的标配工具!原创 2025-03-11 19:00:00 · 493 阅读 · 0 评论 -
【Linux】软件生态与Vim编辑器终极指南
发行版多样性:Linux生态以不同发行版为核心分支,例如适合新手的[Ubuntu]、企业级场景的[CentOS]、追求稳定性的[Debian]等。这些发行版基于相同内核(LinuxKernel),但通过差异化的软件包管理和预装工具形成独特定位。软件仓库机制:每个发行版维护官方软件仓库(如Ubuntu的APT源、CentOS的YUM源),提供数万款开源软件的一键安装。例如通过即可安装编辑器,依赖解析由包管理器自动完成。互动时间:你在使用Vim时有哪些独门技巧?欢迎评论区分享!👍🔔。原创 2025-03-10 19:21:01 · 656 阅读 · 0 评论 -
【Linux】2025最新深入解析Linux权限体系:从小白到高手的完全指南
三类文件权限只能有一个有效,默认是按顺序来找(特别要注意两个都为同一个用户时,只有拥有者权限生效)。目录的可执行权限是表示你能否在目录下执行命令;如果目录没有-x权限,则无法对目录执行任何命令,甚至无法cd进入目录,即使目录仍然有-r 读权限(这个地方很容易犯错,认为有读权限就可以进入目录读取目录下的文件);而如果目录具有-x权限,但没有-r权限,则用户可以执行命令,可以cd进入目录。但由于没有目录的读权限,即使可以执行ls命令,但仍然没有权限读出目录下的文档。互动时间。原创 2025-03-03 20:30:00 · 764 阅读 · 0 评论 -
【Linux零基础入门实践】第一章——Linux的基础指令(下)
上一篇我们学到了十条左右的指令,但指令到底是什么呢?我们创建一个源文件,生成可执行文件,可以运行结果,那么是不是可以认为指令有着和可执行文件同样的属性,各种指令的效果不同,对应着底层实现它的代码不同。各种不同的指令功能存放在了一起,构成指令集。原创 2025-03-02 20:00:00 · 832 阅读 · 0 评论 -
【Linux零基础入门实践】第一章——Linux的基础指令(上)
本篇是新手或者复习型博文,介绍了Linux中常用的指令(上集)原创 2025-03-01 20:00:00 · 939 阅读 · 0 评论