
C++
C++非常适合开发操作系统,许多知名系统均采用
C++或以
C++为主进行构建,比如:塞班操作系统(Symbian OS)曾广泛应用于
诺基亚手机等
移动设备,其核心代码主要由汇编语言和
C++ 构建。官方开发文档,例如为塞班操作系统开发软件:使用
C++ 创建塞班 OS v9 智能
手机应用的初学者指南中明确说明,
C++ 是该系统的主要编程语言。随着
诺基亚市场份额的逐渐下降,塞班系统也渐渐淡出了人们的视野。然而,在那个功能机盛行的时代,它曾是许多人心中的经典。我还记得当年第一时间入手了
诺基亚 7610,这不仅是一款设计精巧的
手机,还支持多种开发方式。我曾在上面尝试过
Python 编程,体验到了在
移动设备上编写代码的乐趣,那是一段充满探索精神的日子。
BlackBerry OS 4.x 是黑莓手机的操作系统,采用 C++ 编写,具备高效性能与安全通信特性。通过逆向工程分析或开发中的观察可发现,该系统使用了部分 C++ 标准库功能。例如,容器类如 vector 和 list 被用于数据存储与管理,而算法库如 sort 和 find 则负责数据处理任务。这些标准库的运用是系统基于 C++ 开发的重要标志。此外,为了简化描述,其他相关内容不再一一列举。这种设计不仅体现了 C++ 的灵活性,还展示了其在资源受限设备上的优势,为黑莓手机的功能实现提供了坚实基础。
鸿蒙系统(HarmonyOS)由华为开发,核心部分采用C++语言编写,openharmony源码已公开。以下是目前OpenHarmony的源码构成,可以看出C++是其主要的编程语言。

诺基亚
此外,Windows、
macOS和
Android系统中均包含大量
C++代码。此外,还有一些用
C++编写的开源操作系统:Freenos 是一个用
C++ 实现的微内核操作系统,它将传统宏内核的服务设计为独立的组件,并置于微内核中,通过消息传递方式进行通信,类似于
macOS 内核中的 Mach 机制。该系统的代码风格清晰,完全采用面向对象思想开发,同时融入了多种经典设计模式,非常适合初学者用来学习操作系统的原理以及面向对象编程的核心理念。SerenityOS 是一款完全用
C++ 构建的开源桌面操作系统,涵盖内核到浏览器,不依赖任何第三方库。其界面复刻了 90 年代操作系统的风格,充满复古气息。或许正是这种怀旧风格,加上
C++ 的技术魅力,吸引了许多
人参与开发。
serenity使用较新的C++标准,代码中引入了C++20的协程功能。