跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像AI 生图工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
Shell / Bash算法

Linux 进程详解:从基础概念到实战操作

Linux 进程的基础概念。首先回顾了冯诺依曼体系结构,解释了 CPU、内存及外设的关系。接着阐述了操作系统的核心概念,包括内核与用户空间的区分,以及操作系统在承上启下中的作用。详细说明了进程的四大核心功能:进程管理、内存管理、文件管理和设备管理。最后介绍了系统调用与库函数的区别及调用链路,强调了操作系统通过描述和组织被管理对象来实现资源管理的逻辑。

RefactorPro发布于 2026/4/5更新于 2026/7/2062 浏览
Linux 进程详解:从基础概念到实战操作

前言

要理解 Linux 进程的本质,必须先回溯现代计算机的底层逻辑 —— 冯·诺依曼体系结构。这一由冯・诺依曼提出的经典架构,确立了计算机的核心组成范式:运算器、控制器、存储器、输入设备、输出设备五大组件,且关键特征是'存储程序'——将指令和数据一同存储在存储器中,由控制器按顺序读取并驱动运算器执行。

在冯诺依曼架构中,**存储器(内存)**是核心枢纽:**CPU(运算器 + 控制器)**从内存中获取指令和数据,完成计算后再将结果写回内存;输入设备(如键盘、磁盘)向内存传入数据,输出设备(如显示器、打印机)从内存读取结果。这种'CPU - 内存'为核心的交互模式,决定了后续操作系统和进程设计的底层约束——所有程序必须加载到内存才能被 CPU 执行,而如何高效管理内存、协调 CPU 与设备的资源分配,成为了技术演进的核心命题。

一、冯诺依曼体系结构

我们常见的计算机,如笔记本、服务器,大部分都遵守冯诺依曼体系。

1.1 计算机的核心组件

截止目前,我们所认识的计算机,都是由一个个的硬件组件组成:

  • 输入单元:包括键盘,鼠标,扫描仪,写板等
  • 中央处理器 (CPU):含有运算器和控制器等
  • 输出单元:显示器,打印机等。
  • 即可以是输入又是输出单元:网卡,硬盘等

关于冯诺依曼,必须强调几点:

  • 这里的存储器指的是内存
  • 不考虑缓存情况,这里的 CPU 能且只能对内存进行读写,不能访问外设 (输入或输出设备)(数据层面)
  • 外设 (输入或输出设备) 要输入或者输出数据,也只能写入内存或者从内存中读取
  • 一句话总结,CPU 不和外设打交道,所有设备都只能直接和内存打交道
1.2 为什么存在内存?

给电脑提供性价比,提高电脑的效率!

1.3 CPU 的核心地位
  • 运算器和控制器共同组成中央处理器(CPU),是计算机的'大脑';
  • 现代 CPU 会集成多级缓存(L1、L2、L3),但缓存本质是内存的'加速延伸',核心数据交互仍遵循冯诺依曼规则
  • 存储层次关系(从快到慢、成本从高到低):CPU 寄存器 → 高速缓存 → 内存 → 本地磁盘 → 远程存储。
二、操作系统 (Operating System)
2.1 操作系统的核心概念

操作系统是一个'软件集合',分为广义和狭义两类:

  • 狭义 OS(内核 / Kernel):直接与硬件交互,核心包含进程管理、内存管理、文件管理、驱动管理四大模块;
  • 广义 OS:内核 + Shell(命令行解释器)+ 函数库(如 glibc)+ 系统工具(如 ls、cp),为用户和应用提供完整运行环境
2.2 为什么要有操作系统

OS 存在就干两件事,刚好卡在'上下之间':

  • 承上:让用户/软件'省心'——你不用懂怎么操控 CPU 寄存器、怎么读写硬盘,点一下鼠标就能启动程序,全靠 OS 把复杂的硬件操作'包装'成简单的指令
  • 启下:让硬件'物尽其用'——比如 CPU 就一个,却能同时跑多个程序;内存就那么大,却能装下好几个 APP,都是 OS 在背后协调硬件资源,避免浪费

举个例子:你点外卖(应用),不用自己找骑手、抢餐箱(硬件)——外卖平台(OS)会帮你协调,这就是'承上启下'的作用。

2.3 四大核心功能

这个'大管家'的核心活儿就 4 件,覆盖了硬件资源的全生命周期:

  1. 进程管理:给程序'排档期'。比如你同时开着微信和视频,OS 会让 CPU 在两个程序之间快速切换(快到你感觉不到卡顿),保证每个程序都能分到'干活时间'。
  • 内存管理:给程序'分工作台'。打开一个游戏,OS 会专门划一块内存给它用;游戏关掉后,又把这块内存'收回来'给其他程序——避免内存被'占着不用'。
  • 文件管理:给数据'建仓库'。你电脑里的文件夹、文档,本质是 OS 把硬盘里的二进制数据,包装成了'能看懂的文件',还负责给文件分类、存/取、防丢。
  • 设备管理:给外设'当翻译'。你插个 U 盘、连个打印机,OS 会自动识别它们,把设备的'语言'翻译成系统能懂的指令——不用你手动调硬件参数。
  • 2.4 如何理解'管理'

    OS 的管理逻辑和现实场景 (如学校校长管理学生) 完全一致。核心分为两步,这也是 Linux 内核的设计思路:

    • 描述被管理对象:用结构体(struct)记录资源信息
    • 组织被管理对象:用高效数据结构(链表,红黑树等)组织结构体
    • 总结:先描述,再组织。
    2.5 系统调用与库函数概念

    OS 不会'主动干活',得等别人'叫它'——这俩就是叫它的方式:

    • 系统调用:直接'喊 OS 干活'的'原始指令'。比如程序要读硬盘里的文件,就得通过系统调用,让 OS 去操作硬盘。
    • 库函数:把系统调用'打包好的工具'。比如编程语言里的'读文件函数',其实是把系统调用裹了一层,让程序员用起来更方便。
    • 调用链路:应用→库函数→系统调用→OS 内核→硬件

    简单说:系统调用是'直接找管家要钥匙',库函数是'管家把钥匙装在工具箱里给你'。

    思考:大家想想操作系统是怎么进行进程管理的呢?很简单,先把进程描述起来,再把进程组织起来(简洁来说就是:先描述再组织)。

    目录

    1. 前言
    2. 一、冯诺依曼体系结构
    3. 1.1 计算机的核心组件
    4. 1.2 为什么存在内存?
    5. 1.3 CPU 的核心地位
    6. 二、操作系统 (Operating System)
    7. 2.1 操作系统的核心概念
    8. 2.2 为什么要有操作系统
    9. 2.3 四大核心功能
    10. 2.4 如何理解“管理”
    11. 2.5 系统调用与库函数概念
    • 免费图片AI生成工具免费生成了解详情
    • Magick API 一键接入全球大模型注册送1000万token查看
    • 免费图片视频在线生成30秒,将你的创意变成现实开始设计
    • X/Twitter免费视频下载器免登陆无限额度免费视频解析下载了解详情
    • 100+免费在线小游戏爽一把
    极客日志微信公众号二维码

    微信扫一扫,关注极客日志

    微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

    更多推荐文章

    查看全部
    • JetBrains Copilot Agent Mode + MCP 配置与实战指南
    • ClawdBot (OpenClaw) Discord 机器人部署指南
    • WebGPU 性能调优技术解析与实践
    • Spring Boot 安全认证与授权
    • OpenClaw 接入 QQ 机器人配置指南
    • Stable Diffusion 本地部署与安装教程
    • 考公压力大是否该放弃?程序员职业路径的理性思考
    • 网络安全零基础入门指南:学习误区、路线与自学利弊分析
    • Spatial Joy 2025 全球 AR&AI 开发大赛参赛指南与避坑攻略
    • Java AI 开发实战:从代码生成到架构优化指南
    • 基于 AirLLM 实现 4GB 显存环境下的 Qwen2.5-72B 本地推理
    • Python3 实用安装教程
    • Microi 吾码:服务器虚拟化资源管理与网络配置实践
    • OpenClaw 深度解析:数字龙虾如何引爆 AI Agent 时代与安全挑战
    • Spring 事务管理实战:@Transactional 注解与传播机制深度解析
    • Model Context Protocol (MCP) 详解:连接 AI 模型与外部工具的新标准
    • Python 爬虫基础教程:请求、解析与数据存储
    • 基于遗传算法的无人机烟幕遮蔽时间优化方案
    • Linux 网络基础入门:协议栈与传输流程
    • 选择排序算法原理与实现

    相关免费在线工具

    • 加密/解密文本

      使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online

    • Gemini 图片去水印

      基于开源反向 Alpha 混合算法去除 Gemini/Nano Banana 图片水印,支持批量处理与下载。 在线工具,Gemini 图片去水印在线工具,online

    • Base64 字符串编码/解码

      将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

    • Base64 文件转换器

      将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online

    • Markdown转HTML

      将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online

    • HTML转Markdown

      将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online