这是本文档旧的修订版!
Linux
Linux 是一个开源的类Unix 操作系统内核,由芬兰程序员 林纳斯·托瓦兹(Linus Torvalds)于 1991 年首次发布。Linux 内核通常与 GNU 工具链结合,形成完整的操作系统,常被称为 GNU/Linux。Linux 是当今最成功的开源项目之一,广泛应用于服务器、嵌入式系统、超级计算机和个人计算机领域。
概述
Linux 以 POSIX 兼容性、模块化设计和开源协作模式为特征。其核心特点包括:
- 开源与自由:遵循 GNU通用公共许可证(GPL)发布,源代码公开可查;
- 多用户多任务:支持多个用户同时登录,真正的抢占式多任务处理;
- 稳定性与安全性:长时间运行无需重启,细粒度的权限管理;
- 跨平台支持:从嵌入式设备(ARM)到超级计算机(x86、PowerPC、RISC-V)均可运行;
- 丰富的发行版生态:数百个发行版针对不同场景进行定制。
Linux 内核采用宏内核架构,但支持动态加载内核模块,兼顾性能与灵活性。
内核版本与分支
Linux 内核有两种主要版本类型:
| 版本类型 | 特征 | 示例 |
| :— | :— | :— |
| 主线版(Mainline) | 由 Linus Torvalds 发布,包含最新功能,更新周期约 2-3 个月 | 6.7, 6.8, 6.9 |
| 长期支持版(LTS) | 长期提供安全更新和 Bug 修复(通常 2-6 年) | 6.1 LTS、5.15 LTS、5.10 LTS |
大多数企业发行版(如 RHEL、Ubuntu LTS)会选取某个 LTS 内核版本并进行长期定制维护。
核心组件
内核子系统
Linux 内核由多个子系统组成:
- 进程调度器:负责 CPU 时间分配(完全公平调度器 CFS);
- 内存管理:虚拟内存、分页、SLAB/SLUB 分配器;
- 虚拟文件系统(VFS):为不同文件系统提供统一接口;
- 网络栈:TCP/IP 协议栈、Netfilter 防火墙框架;
- 设备驱动:支持数以万计的硬件设备;
- 系统调用接口:用户空间与内核空间的桥梁。
用户空间
完整的 Linux 操作系统通常包括以下来自 GNU 和其他开源项目的组件:
- init 系统:现代发行版多数采用 systemd(替代传统的 SysV init);
- Shell 环境:Bash、Zsh、Fish 等;
- 核心工具链:GNU Coreutils(ls、cp、grep 等)、GCC 编译器、GLibc C 标准库;
- 图形系统:X Window System 或 Wayland,搭配 GNOME、KDE 等桌面环境。
主要发行版
Linux 发行版根据包管理和目标场景分为多个分支:
| 发行版 | 包管理 | 特点 | 适用场景 |
| :— | :— | :— | :— |
| Debian | APT(deb) | 稳定,自由软件准则严格 | 通用服务器、桌面 |
| Ubuntu | APT(deb) | 易用,用户友好 | 桌面、云服务器、AI 开发 |
| Red Hat Enterprise Linux(RHEL) | DNF(rpm) | 企业级支持,认证广泛 | 商业服务器、数据中心 |
| Fedora | DNF(rpm) | 技术前沿,快速迭代 | 开发者工作站 |
| SUSE Linux Enterprise | Zypper(rpm) | 欧洲企业市场 | 企业服务器 |
| Arch Linux | Pacman | 滚动更新,高度可定制 | 进阶爱好者 |
| Alpine Linux | APK | 极简,安全,镜像小 | 容器基础镜像 |
| Android | APK | 基于 Linux 内核的移动操作系统 | 智能手机、平板 |
应用领域
Linux 凭借其稳定、高效、可定制的特性,覆盖了几乎所有计算场景:
- 服务器与云计算:Web 服务器(Nginx/Apache)、数据库、云基础设施(AWS、Azure、GCP 底层大量使用 Linux)
- 超级计算机:全球最快的 500 台超级计算机全部运行 Linux
- 嵌入式系统:路由器、智能电视、汽车信息娱乐系统(Automotive Grade Linux)
- 移动设备:Android(全球市场份额最高的移动操作系统)
- 开发环境:大量开发者使用 Linux 作为工作站系统
- 物联网(IoT):轻量级发行版(如 Yocto、OpenWrt)用于边缘设备
- 容器与微服务:Docker、Kubernetes、LXC 均基于 Linux 内核特性
评价与影响
Linux 被公认为开源软件史上最成功的项目之一。其影响体现在:
- 技术层面:推动开源开发模式(Bazaar 模型)被广泛采用;Git 作为副产品深刻影响了版本控制系统;
- 商业层面:Red Hat 成为首家年收入数十亿美元的开源公司;微软等传统竞争对手开始贡献 Linux 内核代码;
- 社会层面:林纳斯·托瓦兹于 2012 年获得千禧技术奖;Linux 基金会目前支持数十个关键开源项目的治理。
批评者有时指出 Linux 的桌面用户体验仍落后于 macOS 或 Windows,驱动兼容性在某些硬件上存在问题。同时,内核开发社区的高门槛也被认为对新手不够友好。即便如此,Linux 在服务器、嵌入式、云环境中的统治地位几乎无可撼动。