可以这么说:macOS的大部分底层确实是用C语言开发的,但不完全是只用C语言。
具体来说:
- 核心(Kernel):macOS的内核叫XNU,是基于Mach微内核(C语言编写)+ BSD部分(主要是C语言和少量C++)组成的。
- 系统库和驱动:很多系统库,比如libsystem,都是用C和Objective-C开发的。驱动程序很多也是用C或C++。
- 用户界面部分:macOS的Cocoa框架(比如AppKit、Foundation)主要是用Objective-C,现在也支持Swift开发。
- 现:苹果近年来在推Swift,但Swift更多用于应用层(比如App Store里的软件),而不是操作系统底层。
总结一句话:
> macOS的底层主要是C语言开发的,上层系统框架大量使用Objective-C和Swift。
如果你想了解得更深入,我可以画一张macOS架构图给你看看,要不要?