操作系统那些事儿⑧:Android——Linux 没能统治桌面,却统治了手机
如果把操作系统的发展史比作《三国演义》,那么本文更像《三国演义》,而不是《三国志》。
本系列尝试用故事化的方式,讲述 Unix、Linux、BSD、GNU、Windows、macOS、Android 等操作系统背后的发展历程。
文中的人物、事件和技术演进都尽量参考公开资料,但为了让故事更容易理解,会适当简化一些历史细节,也会加入作者自己的理解。
它不是一篇学术论文,而是一段程序员视角的技术故事。
如果读完之后,你产生兴趣,愿意继续查阅官方资料,那这篇文章的目的就达到了。
引子:Linux 曾经有一个梦想
如果问:
世界上最流行的操作系统是什么?
很多人的第一反应可能是:
- Windows
- Android
- iOS
- macOS
- Linux
但是,如果换一个问题:
哪个操作系统运行的设备数量最多?
答案可能会让很多人意外:
Android。
今天,全世界数十亿台手机运行着 Android。
而 Android 的底层:
正是 Linux。
但是,有趣的是:
Linux 曾经最大的梦想:
打败 Windows,统治个人电脑桌面。
这个目标,它并没有做到。
Linux 桌面始终没有成为普通消费者的主流选择。
但是:
它换了一条路。
它进入了手机。
然后:
统治了移动世界。
这一次,Linux 没有成为桌面之王。
却成为了手机时代最大的赢家。
第一章:手机革命之前,移动世界属于谁?
故事要从 2000 年前后开始。
那个时候:
智能手机还没有今天这么智能。
手机市场主要由几个巨头掌控:
- Nokia
- Motorola
- BlackBerry
- Palm
每家公司都有自己的操作系统。
例如:
Nokia 使用:
Symbian(塞班)
BlackBerry 使用:
BlackBerry OS
Palm 使用:
Palm OS
微软也推出了:
Windows Mobile

当时的手机:
已经可以:
- 发邮件
- 上网
- 安装应用
但是:
它们和今天的智能手机完全不同。
最大的区别:
手机不是一个开放的平台。
手机厂商决定:
你能安装什么。
你能访问什么。
开发者能做什么。
那个时代:
手机更像一个封闭的电子产品。
而不是今天这样:
一个装在口袋里的计算平台。
第二章:Google 为什么要做手机操作系统?
2005 年。
Google 做了一件当时很多人看不懂的事情。
它收购了一家小公司:
Android Inc.
这家公司成立于 2003 年。
最初的目标:
并不是做手机。
而是希望打造:
面向数字相机的智能系统。

但是很快,他们发现:
手机才是真正的大市场。
Google 看到了一个机会:
未来的互联网入口,不一定是电脑。
可能是:
手机。
如果手机操作系统掌握在别人手里:
那么 Google 的未来会非常被动。
想象一下:
如果未来所有手机都由某家公司控制。
默认搜索引擎。
默认应用商店。
默认服务。
那么互联网入口就会被别人掌握。
于是:
Google 决定:
自己参与这场战争。
第三章:为什么选择 Linux?
Google 面临一个选择:
自己从零写一个操作系统?
还是站在已有技术之上?
最终:
他们选择了 Linux。
原因很简单:
Linux 已经拥有:
成熟的内核。
优秀的硬件支持。
大量开发者。
开放的许可证。
但是:
Android 并不是简单地把 Linux 装进手机。
它做了一次巨大的改造。
因为:
手机和服务器完全不同。
服务器:
有大量内存。
有稳定电源。
可以运行复杂服务。
手机:
电池有限。
内存有限。
需要快速响应。

于是:
Android 在 Linux Kernel 之上:
增加了一整套自己的系统。
包括:
- Android Runtime
- 系统服务
- Framework
- 应用生态
最终形成:
一个基于 Linux Kernel,但完全不同于传统 Linux 的移动操作系统。

第四章:2007 年,一个苹果改变了世界
2007 年。
发生了一件改变手机历史的事情。
苹果发布:
iPhone。
这一天:
智能手机时代真正开始。
乔布斯展示了一台设备:
电话。
音乐播放器。
互联网终端。
三者合一。
整个行业震动。
Nokia 当时依然是手机霸主。
很多人认为:
iPhone 只是一个漂亮的玩具。
但是历史证明:
手机行业的游戏规则变了。
过去:
手机厂商竞争的是硬件。
以后:
竞争的是:
操作系统 + 应用生态。
Google 也意识到了:
必须加快 Android 的发展。
第五章:2008 年,Android 登场
2008 年。
第一台 Android 手机:
HTC Dream(T-Mobile G1)
正式发布。

它并没有像 iPhone 那样惊艳。
甚至有很多不足:
界面粗糙。
性能有限。
应用很少。
但是:
它有一个巨大优势:
开放。
Google 选择了一条和 Apple 完全不同的道路。
Apple:
控制硬件。
控制系统。
控制应用商店。
打造一个完整生态。
Google:
把 Android 开放给手机厂商。
让:
Samsung。
HTC。
Motorola。
Sony。
华为。
小米。
都可以使用 Android。

这是一场完全不同的战争。
第六章:Android 赢在哪里?
很多人会问:
为什么 Android 最终成功?
答案:
不是因为它技术最先进。
而是因为:
它适应了产业规律。
第一,开放降低了进入门槛
对于手机厂商来说:
重新开发一个操作系统:
成本巨大。
Android 提供了一条捷径。
厂商可以:
拿来修改。
加入自己的界面。
适配自己的硬件。
快速推出产品。
第二,Android 建立了应用生态
一个操作系统成功:
靠的不只是代码。
更重要的是:
生态。
开发者愿意开发应用。
用户愿意购买设备。
设备厂商愿意支持。
形成循环。
Android 借助:
Google Play。
开发者工具。
庞大的用户数量。
逐渐形成自己的生态。
第三,Linux 内核提供了强大基础
虽然普通用户看不到:
但是 Android 背后:
Linux Kernel 一直默默工作。
负责:
- 进程管理
- 内存管理
- 网络
- 驱动
- 安全机制
Linux 在服务器领域积累几十年的技术:
最终被带到了手机。
第七章:但是 Android 不是传统 Linux
很多人第一次接触 Android 时会疑惑:
Android 是 Linux,为什么不像 Ubuntu?
因为:
Android 和传统 Linux:
只是共享 Kernel。
上层完全不同。
传统 Linux:
Linux Kernel |GNU 工具链 |Shell |桌面环境 |应用程序
Android:
Linux Kernel |Android Runtime |Framework |System Services |Android Apps

Android 没有采用完整 GNU 用户空间。
也没有使用传统 Linux 桌面环境。
所以:
Android 是:
一个使用 Linux 内核的移动操作系统。
而不是:
一个安装在手机上的 Ubuntu。
第八章:Linux 没有赢得桌面,却赢得了未来
回头看:
Linux 的历史非常有意思。
它曾经挑战:
Windows 桌面。
但是失败了。
普通用户依然大量使用:
Windows。
macOS。
但是:
Linux 最终找到了自己的位置。
服务器:
Linux 成为绝对主流。
云计算:
Linux 几乎无处不在。
超级计算机:
Linux 长期占据统治地位。
手机:
Android 让 Linux 进入几十亿人的生活。
甚至:
智能电视。
汽车系统。
物联网设备。
大量设备:
都运行着 Linux。

Linux 没有按照最初的剧本成功。
但它走出了另一条道路。
写在最后:一场没有按照计划发生的胜利
如果回到 1991 年。
Linus Torvalds 发布 Linux 时。
可能没人想到:
这个大学生写的小系统。
几十年后:
会运行在:
服务器。
手机。
汽车。
超级计算机。
各种智能设备。
但是:
Linux 最有趣的地方就在这里。
它没有成为 Windows。
也没有复制 Unix 的道路。
它通过开放:
形成了一个巨大的生态。
Android 也是如此。
它没有成为另一个 iPhone。
而是选择:
让更多厂商参与。
让更多设备运行。
最终:
Linux 没有统治我们的桌面。
但是:
它进入了我们的口袋。
今天,当你拿起手机:
打开应用。
连接网络。
浏览世界。
背后可能都有一个 Linux Kernel:
默默运行。
如果把现代操作系统看成一片森林:
Unix 是那棵最古老的大树。
Linux 是其中成长最快的一支。
而 Android:
则是它伸向移动世界的一根巨大枝条。
下一篇:
Android 与 iOS:两条完全不同的移动帝国之路。
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐

所有评论(0)