Linux介绍
操作系统定义
操作系统(Operating System, OS) 是计算机系统中最为核心的系统软件,它负责管理和协调硬件资源(如 CPU、内存、磁盘、外设),并为用户和应用程序提供与硬件交互的统一接口和服务,使计算机能够高效、稳定、安全地运行。计算机操作系统是随着计算机研究和应用的发展逐步形成并发展起来的,先有计算机硬件,再有操作系统。
Unix是什么
谈Linux操作系统之前,我们先要说说它的祖先,或者说它的借鉴对象Unix。
Unix 是计算机历史上最具影响力的操作系统之一,诞生于 1969 年,由 AT&T 贝尔实验室(Bell Labs) 的 肯·汤普森(Ken Thompson) 和 丹尼斯·里奇(Dennis Ritchie) 等人开发。它的设计哲学(如“一切皆文件”、模块化、简洁性)深刻影响了后来的操作系统(如 Linux、macOS、BSD)。
1. Unix 的诞生(1969-1970s)
1960 年代,贝尔实验室与 MIT、通用电气合作开发 Multics(多用户分时操作系统),但因过于复杂而失败。肯·汤普森在开发Multics期间,做了一款游戏,暂且叫“星际旅行”,离开Multics项目外,肯·汤普森没法玩这款游戏了,在1969年,它在一台闲置的 PDP-7 小型机上开发了 Unix 的原型(最初用汇编语言编写)。在1970年,系统正式命令为Unix,后在1973 年,丹尼斯·里奇开发了C语言,并用它重写了Unix,使其可移植性大幅提升。
2. Unix 的早期发展与传播(1970s-1980s)
1970 年代中期,AT&T 以极低价格向大学提供 Unix 源代码(因反垄断限制无法商业化)。加州大学伯克利分校(UCB)开发了 BSD(Berkeley Software Distribution),增加了 TCP/IP、vi 编辑器等关键功能。
后期AT&T看到Unix的分支越来越多,并且感觉到价值越来越大,AT&T开始对授权进行收紧,甚至闲源了代码。终于在1977 年AT&T 发布 System III,后演变为 System V(商业版 Unix 标准)。
当Unix越来越流行,在1980 年代,多家公司推出自己的 Unix 变种,专门从针对企业级收费服务,如Sun公司的SunOS/Solaris(Sun Microsystems),HP公司的HP-UX(惠普),IBM公司的AIX(IBM)等
3. Unix 的衍生系统(1980s-1990s)
(1)BSD 家族
FreeBSD/NetBSD/OpenBSD:开源 BSD 分支,注重性能和安全性。
macOS:苹果的 Darwin 内核基于 FreeBSD。
(2)GNU 与 Linux
1983 年:理查德·斯托曼发起 GNU 项目,试图开发一个自由的 Unix 替代品(但缺少内核)。
1991 年:林纳斯·托瓦兹开发 Linux 内核,与 GNU 工具结合形成 GNU/Linux。
(3)Minix
1987 年由安德鲁·塔能鲍姆(Andrew Tanenbaum)开发,用于教学,启发了 Linux 的诞生。
开源与GNU运动
1980年后,随着Unix的商业化(如AT&T将其作为商业软件发布),其源代码逐渐闭源,用户失去了自由使用、修改和分发Unix的权利。斯托曼认为,软件的自由是用户的基本权利。他反对软件专有化,主张用户应能够自由地运行、复制、分发、学习、修改和改进软件。为此,他发起了GNU运动,旨在开发一个完全自由的操作系统。很遗憾这个愿景没有完成,但做出也很多著名的软件,如
- GCC(GNU Compiler Collection):一个功能强大的编译器套件,支持多种编程语言。
- GNU Bash:一个常用的Unix Shell。
- GNU Emacs:一个高度可扩展的文本编辑器。
同时他发布通用公共许可证GPL,GPL是一种“左版”(Copyleft)许可证,要求任何基于GPL软件的衍生作品也必须以GPL发布,从而确保软件的自由得以延续。
随着时间的发展,许可证也越来越多,每个许可证都有不同的规定。常见的开源协议如下:
- GPL协议:源代码无法保护
- LGPL协议:比GPL宽松,可以发行链接库文件,以保护自己的源代码
- BSD协议:很宽松
- 木兰协议:国产
Linux诞生
芬兰赫尔辛基大学的 林纳斯·托瓦兹(Linus Torvalds) 是一名计算机科学学生,他使用 Minix(一个教学用的简化 Unix 系统)时,对其功能限制不满,决定自己编写一个更强大的操作系统内核。1991 年 8 月 25 日,林纳斯在 Usenet 新闻组(comp.os.minix) 发布了一条著名公告:
“我正在做一个(免费的)操作系统(只是个爱好,不会像 GNU 那样庞大和专业)……”
同年 9 月 17 日,他发布了 Linux 0.01(仅支持 i386 架构,功能极其有限)。
1994年,发布正式版的Linux 1.0内核
衍生发行版
因为Linux内核是开源的,很多应用软件受GNU运动的影响,有商业的,也有开源的,于是发行Linux就变得很容易的。到现今,Linux已经有很多个衍生版本,如Redhat、openSUSE、Debian、deepin、银河麒麟,统信UOS等。
Linux发行版=Linux内核+实用程序
Linux发行版有商业版与社区版之分,商业版提供企业级服务,如补丁,但是收费的,社区版由社区维护,一般免费。
Linux内核版本
我们可以访问kernel.org网站,查看或下载所有的Linux内核版本。
Linux内核版本号由3个数字组成:
第一个数字:目前发布的内核主版本;
第二个数字:偶数表示稳定版本,奇数表示开发中版本,目前已不怎么适用了;
第三个数字:错误修补的次数;
第四个部分:有些商业版还有额外的字段提供
像OpenEuler 22.04,内核版本为5.10.0-216.0.0.115
OpenEuler操作系统介绍
openEuler 是由 华为 发起并开源的一个 企业级 Linux 发行版,专注于 高性能、高可靠性、高安全性,主要面向 服务器、云计算、边缘计算 等场景。它基于 Linux 内核,并融合了华为在操作系统领域的技术积累,旨在构建一个 开放、协作的开源操作系统生态。
1. openEuler 的背景与发展
- 2019 年:华为宣布开源 EulerOS(原内部使用的服务器 OS),并推出 openEuler 社区。
- 2020 年:首个社区版本 openEuler 20.03 LTS 发布。
- 2021 年:成立 openEuler 开源社区,吸引 麒麟软件、统信软件、中科院软件所 等企业和机构加入。
- 2022 年:发布 openEuler 22.03 LTS,支持 RISC-V、ARM、x86 等多种架构。
- 2023 年:推出 openEuler 23.09,增强 云计算、AI、嵌入式 支持。
2. openEuler 的核心特点
(1)高性能优化
- 多核调度优化:提升 CPU 利用率,适用于高并发场景(如云计算、数据库)。
- 内存管理增强:支持 大页内存(HugePages)、NUMA 优化,提高内存访问效率。
- 存储与 I/O 优化:针对 NVMe、分布式存储(如 Ceph)进行优化。
(2)高安全机制
- SecGear 机密计算框架:保护数据隐私(如 AI 训练、金融计算)。
- SELinux 增强:提供更严格的访问控制策略。
- 国密算法支持(SM2/SM3/SM4):符合中国信息安全标准。
(3)云原生与虚拟化
- Kubernetes 优化:提升容器编排性能。
- 轻量化容器 OS:支持 iSulad(华为自研容器引擎)。
- QEMU/KVM 虚拟化增强:适用于云计算和边缘计算。
(4)多架构支持
- x86_64(Intel/AMD)
- ARM64(鲲鹏、飞腾等国产芯片)
- RISC-V(开源指令集,适用于 IoT 和嵌入式)
- LoongArch(龙芯架构)
(5)开源生态
- 开放治理:由 openEuler 社区 共同维护,非华为单一主导。
- 兼容主流 Linux 生态:支持 RPM 包管理,兼容 CentOS/RHEL 应用。
- 衍生发行版:
- 麒麟软件(Kylin) 基于 openEuler 推出商业版。
- 统信软件(UOS) 适配 openEuler 用于企业级场景。
3. openEuler 的版本与支持策略
版本类型 | 发布周期 | 支持年限 | 适用场景 |
---|---|---|---|
LTS(长期支持) | 每 2 年一版 | 4-10 年 | 企业服务器、云计算 |
创新版 | 每 6 个月一版 | 6 个月 | 开发者测试、新特性验证 |
最新稳定版:
- openEuler 24.03 LTS(2024 年 3 月发布,支持至 2028 年)