试从技术架构、应用场景、开放性、用户界面、价格(包括但不限于) 等方面比较Windows、安卓、Linux. Mac os.鸿蒙操作系统。(第一行写明你采用何种方式完成该项作业)。
Windows系统架构采用分层架构,自下而上分为内核态和用户态,Windows的内核为混合内核(本质上为宏内核架构,并非微内核)。
内核态自下而上分为硬件抽象层(HAL)->内核和驱动层 ->执行体,以及窗口管理系统。用户态主角是NTDLL抽象层,以及各种进程,如:底层的系统支持进程->服务进程->用户应用程序。如下图所示:图片来源:51CTO博客
Windows、Linux、macOS三大系统都基本是由Unix系统衍生而来的
Windows操作系统借鉴了Unix“树”的思想,Linux借鉴了Unix操作系统的思想,而macOS则是Unix的衍生系统之一,是苹果公司基于FreeBSD操作系统的改造,苹果操作系统只不过是UNIX的一个细小分支而已。
Linux 只是指操作系统的核心, 并没有各种应用程序, 如网络工具、多媒体软件等。因此现在市场上有很多种Linux Kernel 为核心再集成搭配各式各样的系统程序或应用工具程序组成的一套完整的操作系统。
Linux是可以任意包装自由配置的东西。任何一个人,一家公司 都可以按照自己的想法,比如加一点功能,加中文支持,作一个Linux出来。这些 Linux虽然核心部分都一样,但是他们所带的各种软件,缺省的配置都不一样。
Linux 内核版本就是Linux的核心版本 由官网 www.kernel.org 发布
Linux 发行版本就是各个公司的在Linux核心版本上就行包装,添加想要的内容,这就衍生出非常多的发行版本,如下图所示。譬如的redhat, CentOS, 红旗、Ubuntu等,这些都是的Linux衍生操作系统。
Linux系统一般有4个主要部分:
内核、shell、文件系统和应用程序
内核、shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序、管理文件并使用系统。
Linux 内核由如下几部分组成:内存管理、进程管理、设备驱动程序、文件系统和网络管理等。如图:图片来源:CSDN博客
Linux系统将自身划分为两部分,一部分为核心软件,即是kernel,也称作内核空间,另一部分为普通应用程序,这部分称为用户空间。
应用程序是无法直接访问硬件资源的,需要通过通过内核SCI 层提供的接口来访问硬件资源。图片来源:CSDN博客
Windows操作系统倾向于将更多的功能集成到操作系统内部,并将程序与内核相结合;而Linux不同于Windows,它的内核空间与用户空间有明显的界限。根据设计架构的不同,两者都可以使操作系统更加安全。
苹果系统把其操作系统分为四个层次,分别为应用层,应用框架层、核心框架层,还有就是Darwin。如下图所示:图片来源:CSDN
核心架构为Darwin架构,其中EFI指的就是EFI在概念上非常类似于一个低阶的操作系统,并且具有操控所有硬件资源的能力
Mac OS X的内核环境主要包括了Mach微内核和BSD内核,其中BSD部分主要来自FreeBSD。
安卓系统是基于linux的宏内核设计:宏内核包含了操作系统绝大多数的功能和模块,而且这些功能和模块都具有最高的权限,只要一个模块出错,整个系统就会崩溃,这也是安卓系统容易崩溃的原因。好处就是系统开发难度低。图片来源:知乎
Android系统启动架构图
自下向上分为:Loader层- > Linux宏内核层 -> 硬件抽象层HAL -> Android Runtime&系统库 -> Framework层 -> App层
安卓系统是运行在Linux宏内核之上的Java虚拟机中的。
鸿蒙操作系统是微内核设计:微内核仅包括了操作系统必要的功能模块(任务管理、内存分配等)处在核心地位具有最高权限,其他模块不具有最高权限,也就是说其他模块出现问题,对于整个系统的运行是没有阻碍的。
HarmonyOS整体遵从分层设计,从下向上依次为:内核层、系统服务层、框架层和应用层。系统功能按照“系统 > 子系统 > 功能/模块”逐级展开,在多设备部署场景下,支持根据实际需求裁剪某些非必要的子系统或功能/模块。HarmonyOS技术架构如下所示。图片来源:华为开发者文档
鸿蒙OS也是运行在Linux内核之上,但是是运行在Linux微内核之上,且使用自研编译器取代Java虚拟机。因此理论上,性能、稳定性和安全性高于安卓。
Windows | 安卓 | Linux | macOS | 鸿蒙 |
---|---|---|---|---|
桌面级操作系统,家用 、个人、娱乐、企业、商业各个领域都有 | 移动终端操作系统,现已进入到每个人的生活中,手机、平板电脑、嵌入式家电 | 常用于服务器,移动端、云计算、AI技术以及嵌入式等各个领域 | 苹果Macintosh系列电脑上的操作系统,是苹果公司独有的封闭操作系统,所有应用需要苹果公司的审核。涉及桌面级操作系统各个领域 | 具有丰富移动终端、桌面终端的应用场景,号称“万物互联”,面向全场景的操作系统 |
Windows | 安卓 | Linux | macOS | 鸿蒙 |
---|---|---|---|---|
优美丰富图形化界面 | 优美丰富图形化界面 | 发行版Linux系统会配备一定的图形化界面,但算不上丰富。所有功能的实现主要通过终端命令行实现 | 优美丰富图形化界面 | 优美丰富图形化界面 |
Windows | 安卓 | Linux | macOS | 鸿蒙 |
---|---|---|---|---|
封闭 | 开源 | 开源 | 封闭 | OpenHarmony为开源项目,鸿蒙OS为此开源项目的商用版本 |
Windows | 安卓 | Linux | macOS | 鸿蒙 |
---|---|---|---|---|
收费在购买安装Windows系统的电脑时,相关费用已经被计算进入总价中了 | 免费 | 免费 | 收费价格已包含在苹果电脑售价中 | OpenHarmony开源项目免费,商用鸿蒙OS收费 |
Windows | 安卓 | Linux | macOS | 鸿蒙 |
---|---|---|---|---|
支持平台对应绝大部分软件,具有大量的软件供应,软件支持十分良好 | 支持平台对应绝大部分软件,具有大量的软件供应,软件支持十分良好 | Linux为开源核心,软件支持十分自由,海量开源软件 | 支持平台部分软件,所有应用需要苹果公司的审核。具有独占软件,但也有很多软件不支持该操作系统。 | 支持平台大部分软件,目前各大软件平台不断开发适配鸿蒙OS的软件 |
Windows | 安卓 | Linux | macOS | 鸿蒙 |
---|---|---|---|---|
用户量庞大,木马病毒生产量大,安全性相对低(对比Linux) | 1. 基于Linux宏内核的Java虚拟机之上运行的,存在虚拟机逃逸。2. 用户量庞大,安全性一般 | 1. 用户量相对少(对比windows),安全性相对较高2. 开源系统,漏洞容易被发现和解决3. 定期发布安全补丁4. 开源社区庞大,安全专家和开发者多 | 封闭系统,审核严格,安全 | 1. 基于Linux的微内核架构,因此安全性理论相对安卓高2. 开源系统,漏洞容易被发现和解决3. 发展中的系统,现存用户量较少,安全性相对较强 |
参考资料:
[2] Windows系统、Linux系统 和 Mac OS操作系统 历史由来 与 区别?
[3] 对比安卓和鸿蒙的区别
[4] 华为开发者文档