红联Linux门户
Linux帮助

MIUI是不是操作系统

发布时间:2016-06-02 11:21:41来源:linux网站作者:ghostwolf

Red Hat、Ubuntu如果可以被称之为操作系统,MIUI、Flyme等被称为操作系统也没什么不可以

最近几年国产智能手机是热门话题,国产手机的各种深度定制化Android自然也经常被讨论,很多人说“MIUI只是UI不是系统”,“Flyme?魅族只有美工,他们就是画了几个图标”,真的是这样吗?这里我们以MIUI为例来探讨一下这些深度定制化Android是不是操作系统,不过我们首先要弄明白什么是操作系统。


什么是操作系统?

相信大部分都接触过组装的台式机,我们买来主板、CPU、内存、硬盘、显示器、鼠标键盘等硬件设备组装成一台电脑。电脑组装完了,我们需要装操作系统,否则我们没法使用这台机器,所以说操作系统是人与硬件交互的桥梁。

操作系统最基本的就是实现让硬件可以正常的管理硬件,让CPU可以运算数值,可以往硬盘写入数据,让网卡能够传输数据等,这就是操作系统的内核,在Linux中,这个内核称之为Kernel。内核是如此的重要,自然需要进行一些保护,同时也是为了让程序员容易开发,因此操作系统除了内核程序之外通话还会提供一整套的接口,这就是系统调用的中间层。我们安装的应用程序就是跟这些系统调用打交道,然后通过内核告诉硬件做什么。所以一般来说操作系统分为两部分,一部分为系统内核,一部分是负责系统调用的,注意,这里只是最简单的划分,如果详细的划分还会有驱动层等。

MIUI是不是操作系统


Andoid也不是从零开始

对于操作系统我们有了大概的了解,我们再来看一下Android,我们借用一下谷歌的一张Android结构剖析图,我们看到Android内核也是Linux Kernel。从某种程度来说Android也是Linux的一个分支,但是Android确实是一个操作系统,既有与硬件打交道的内核(虽然是Linux的),也有与上层打交道的系统调用框架以及运行时等,满足操作系统的要求。

MIUI是不是操作系统


MIUI也不仅仅只是UI

如果你经常关注IT新闻一定听过一个报道“MIUI违反开源协议不开源”,Android脱胎于Linux,这必然会跟开源扯上关系。开源也是要遵守协议的,开源协议后很多种,比如Apache2.0 、GPL,为了更好的商业化,Android选择了对商业化更友好的Apache2.0并不需要开源,那争议的是哪一部分呢?是下面更核心的部分,采用了传染性很强的GPL开源协议。这里就不说各种协议以及是否应该开源了,提到开源是因为这说明MIUI对Android下层的东西作了很多的修改,有人想看。当然后来小米也陆续的开源了很多,这些我们在github上就可以看到。

MIUI是不是操作系统

上图是github上的米4 Kernel OpenSource

所以说,MIUI不仅仅是在AOSP的基础上套个皮肤,对于系统底层也做了一些修改,但是他还是以Android为基础的,包含操作系统的一切要素。如果说MIUI是个系统也并没有什么问题,但是是基于Android的操作系统,更何况MIUI满足CDD与CTS。而阿里的YunOS改动的地方更多,甚至重写了虚拟机替换Dalvik,可以称之为一个分支,甚至可以独立于Android之外了。其实不是现在才有这样的争论,比较早的Red Hat、Ubuntu算不算操作系统呢?其实都可以称之为一个操作系统。如果把这个理论引申到硬件上就是,Intel的i7就是CPU,海思的CPU是基于ARM架构的可他也是个CPU。


关于MIUI,YunOS是不是操作系统的争论,对一般人来说只是茶余饭后打嘴炮的谈资,但是我们还是应该清楚这个操作系统说的是什么。诚然我们在操作系统、数据库等基础软件的研究上远远落后于美国。


本文永久更新地址:http://www.linuxdiyf.com/linux/21176.html