0、前言及技术背景

操作系统的开源与创新(我的遐思第三类操作系统的新途)(1)

我写这个系列文章的目的,不是为了科普或者其他什么的,而是想描述一下我心里的未来第三类操作系统应该是什么样子的,它会有哪些特征,它又会专注于哪些领域应用。有关第三类操作系统的新途构思与遐想仅仅是我一家之言,是我站在当下对未来科技趋势的一种遐想式地勾画,想要勾勒出一幅自以为还算美妙的画卷。

需要说明的是,《我的遐思》系列到目前为止,还不够完善,我的思路并不是一成不变的,而是随着时间变化以及接触的一些事物或许会使我的思维发生一定的改变。我也在不断接收一些现实生活中与网络信息里能够获取到的与之相关的新观点。所以《我的遐思》系列的文章会不断地发布,把我的想法写出来,此篇文章只是一个开头。另外,文章中所涉及的观点不一定正确与客观,欢迎正常的交流与沟通。

操作系统的开源与创新(我的遐思第三类操作系统的新途)(2)

当下,近年来随着华为公司的鸿蒙系统问世,其中的亮点和新意也让我在这两年里有所思考。比如鸿蒙系统基于LiteOS、Linux内核以及微内核概念针对不同领域设备,从而实现鸿蒙系统跨平台运行。过去我们想要各种设备的互联互通,靠的是应用层软件协议来实现的。而鸿蒙系统解决了多设备在系统层里就可以完成互联互通,较大提高了物联网万物互联的效率,正好切合了当下万物互联的发展模式。我敢相信,在今后一段时间内,华为的鸿蒙系统将大有发展作为。

1、听我说,操作系统可以这样分类1.1、操作系统的由来

自从计算机问世以来,我们就开始了逐步有了软件和硬件这两个概念。上个世纪40年代首台通用计算机(或者说是电子管机器)诞生,硬件就伴随而生,因为硬件是一切物质的载体,计算机也不例外的需要依赖于硬件来实现相应的功能。当时人们还没有意识到软件的重要性,这台计算机需要借助人进入其内部操作电子管开关来实现目标计算。我们把这一时期的计算机实现功能称为硬件程序。

操作系统的开源与创新(我的遐思第三类操作系统的新途)(3)

后来,随着科学技术和工艺水平的不断提高,人们想要让机器自动按照人的意愿来运行。这个时候出现了纸带打孔代替人工操作,才逐步有了程序编程的概念,通过磁带编程再给纸带打孔进一步释放了人的双手。这时进入批处理阶段,出现了单道批处理系统、多道批处理系统,这就是操作系统的雏形与早期发展模式。紧接着,多用户多任务以及用户与计算机交互的需求推动下出现了分时操作系统,这一系统模式对所有用户任务是完全公平的分配它们的执行时间,因为其不能优先处理一些紧急任务,所以又出现了实时操作系统,由于实时操作系统模式需要一定的专注性,所有实时系统多用于一些需要快速响应的设备,比如像现在的嵌入式单片机中的一些应用就是跑的实时系统(比如Freertos等等)。所以随着计算机的普及和功能变得强大,开始出现了Windows、Linux这类复杂的操作系统,并在如今这些操作系统也依然活跃在我们的眼前。

操作系统的开源与创新(我的遐思第三类操作系统的新途)(4)

1.2、何谓操作系统?

什么是操作系统?我们先来看一下操作系统的一般定义:操作系统(Operating System)是一组主管并控制计算机操作、运用和运行硬件、软件资源和提供公共服务来组织用户交互的相互关联的系统软件程序。根据运行的环境,操作系统可以分为桌面操作系统,手机操作系统,服务器操作系统,嵌入式操作系统等。

操作系统的开源与创新(我的遐思第三类操作系统的新途)(5)

从定义,我们可以知道,计算机的操作系统就是一段程序软件,它是可以直接操作底层硬件的,并且分配计算机的各种软硬件资源,为应用层与硬件层提供一个通信渠道的程序。它与应用层的用户软件没有本质区别,一些公共服务也可以被集成到系统层。操作系统总的来说就是由驱动(驱动硬件的程序) 管理(制定用户软件调用规则)组成。

操作系统的开源与创新(我的遐思第三类操作系统的新途)(6)

1.3、操作系统的划分

我们生活中或多或少都听说过这些操作系统的概念,比如像单道批处理系统、多道批处理系统、分时系统、实时系统、微机操作系统等等。这些概念都是根据各个时期计算机操作系统的一些显著特点而命名的,它们也是符合当时科学技术与工艺水平的发展而不断发展到如今的微机操作系统时代。我们现在所接触的主流电脑操作系统基本上是属于微机操作系统的产物。

今天,我并不想谈这些诸如单道批处理系统、多道批处理系统、分时系统、实时系统、微机操作系统的具体特征,我相信大家通过这些名词的字面意思基本上就了解了它们所具有的典型特征。所以这里也就不需要我来赘述这些操作系统了。

我是想从我自己的认识角度来对过去、现在、未来这三个阶段的操作系统进行一个简单分类,通过对过去、现在的操作系统的发展路线进行分类总结,来构思一下我认为的未来操作系统应该具备的一些特征与应用场景。

操作系统的开源与创新(我的遐思第三类操作系统的新途)(7)

在我看来,操作系统自诞生以来的所有系统都可以被这样分类:

第(一)类:无内核分层思想的简单系统,这些操作系统基本是为了实现某一个或者少数几个功能的管理逻辑程序,比如单道批处理系统、多道批处理、分时系统、实时系统系统等,这些系统严格意义上来说只是一段程序,可以实现对计算机硬件的资源分配与管理。受限于当时的计算机软硬件的发展水平,当时的计算机还主要是被用在科学研究,并没有在普通家庭普及个人电脑。所以对这一时期的操作系统的需求是比较专一的,操作系统也就没有设计得非常复杂。

第(二)类:有内核分层思想的操作系统,随着计算机技术的发展,开始普及个人电脑,普通人也能使用上以前科研人员才能用的设备了,人们对计算机的运行速度和性能的要求越来越高,需求也越来越五花八门,这一时期基于NT内核的Windows桌面系统的出现,才算是真实意义上让我们普通人熟悉电脑起来。这一时期的操作系统基本都是在第(一)类的基础上或包含或重构发展而来的带有内核的操作系统。这一时期之所以选择带内核,是因为计算机的系统层越来越复杂,包含到系统层的东西越来越多,有必要对操作系统进行更加精致的划分分层以及完善操作系统的硬件资源管理逻辑。这一时期的操作系统将内核专注操作系统的核心功能,内核外有一些驱动程序的驱动层、有一些应用软件调用的接口层等等。

操作系统的开源与创新(我的遐思第三类操作系统的新途)(8)

从上述两类的操作系统的发展规律来看,它们很像是一个公司的不同发展阶段。我们现在就拿一个公司发展的各个阶段来类比举例:第(一)类操作系统就像是只有几个人的初创公司的初创阶段,各方面的规则章程还不完善,好在它的内容较少,功能较为单一简单及专心于某一应用场景,所以并不显得很混乱而且效率好像还可以,这一阶段的系统不能处理较为复杂的应用任务,不过好在当时的任务需求总体要求不高,这类系统还是能够满足一定需求的。第(二)类操作系统就像是已经发展到一定阶段的中型公司,随着工作任务需求的复杂度快速增加,原先的操作系统架构显得不再能满足要求,所以它就开始着手设计系统层的组织架构,使得整个操作系统看起来井井有条的工作,从而能够实现更加复杂的功能,这正好满足了当下计算机对操作系统的要求。然而,我们很清楚有一种叫做大公司病的现象,即一旦公司壮大后,各种问题也随之而来,组织架构也变得冗余不堪,过去是因为公司还在不断发展壮大,这些问题还没有达到非处理不可的地步,而今问题在不断地爆发出来。所以我们认为公司发展到一定阶段后,自然需要面临着改良创新。同样的道理,第(二)类操作系统也面临着这样的局面。从而我们需要引入第(三)类操作系统。

第(三)类:重定义的操作系统,如何重定义呢?

关于如何重定义第(三)类操作系统,我相信诸位也是有一些想法的,其实我也有了一些初步的不太成熟的想法,不管这个想法对不对,我也想要坚持把它说出来。随着说的过程,也是不断思考完善的过程,不断去构思第(三)类操作系统的架构模型,或许正如诗中所写“山重水复疑无路,柳暗花明又一村”一样在对未来第(三)类操作系统的遐思中有所收获。

2、第三类操作系统应该关注这些

操作系统的开源与创新(我的遐思第三类操作系统的新途)(9)

目前世界上比较主流的操作系统主要有两类:(一) 专项产品类,比如: PC 类 Windows系统、 服务器类 Linux系统、手机类 Android/ios系统、云端系统类以及其他各种设备上跑的各种系统等等;这些操作系统的特点就是只能在单一种类(或少数几类)的设备上运行,是各系统开发商根据某一种类或少数几类的设备而专门开发的操作系统。(二) 跨平台类,比如:华为 HarmonyOS 等等,HarmonyOS不再是仅在单一种类设备上运行,而是可以在手机、电视机、冰箱等家电、手环、手表等便携式设备等多个领域的设备上互联互通。华为的鸿蒙系统也算是近些年来相对于以前的一些操作系统(特别是移动互联网手机的安卓系统)的一点创新吧,它将过去应用层的一些通信互联功能集成到了系统层,使得鸿蒙系统能够更好地适应当下物联网时代万物互联的需求。

根据我们上面的有关定义,我们可以把第(一)类专项产品类操作系统,比如:不管是互联网时代的 PC 类 Windows系统、服务器类 Linux系统、还是移动互联网时代的手机类 Android/ios系统等都归于第(二)类操作系统,统称为2.0代操作系统。随着2.0代操作系统的即将落幕,第(二)类跨平台类操作系统,比如:华为 HarmonyOS 等的到来,我们也算是迎来了2.5代操作系统的时代(也是万物互联时代),之所以称华为鸿蒙系统是2.5代操作系统,是因为鸿蒙系统虽有创新,但依然是第(二)类操作系统的架构特征。并没有表现出第(三)类操作系统的基本特征。

操作系统的开源与创新(我的遐思第三类操作系统的新途)(10)

将现有的第(二)类操作系统的两组系统分好类后,我们将具体描述一下这两组操作系统的情况,这样我们也好去得出一些第(三)类操作系统应该具备的基本特征:

1)专项产品类,以前的系统受制于各种硬件的差异与工艺水平,导致系统基本是一个系统对应一个或一类具体硬件产品,并且还要适配,后续还要不断升级更新来确保产品不出问题。这是受过去的技术条件有限从而制约了操作系统的发展,同时也制约了人的设计思路。现在随着科学技术水平的不断提高,这类系统终究会被扔进历史的垃圾箱。近年来,在不同类型设备上,也只能采用 app 等应用软件或模拟器软件来实现联动。这也是无奈之举,所以人们开始着手跨平台类系统研发,也就是接下来所说的另一类系统了。

操作系统的开源与创新(我的遐思第三类操作系统的新途)(11)

2)跨平台类,这类系统是依托网络通信速度的快速发展(比如 5G 技术不断成熟),过去不同平台通信速度慢,很难解决操作系统间通信的延迟与丢失问题,只能借助应用软件实现较为简单的数据通信,这就是网络。现在,通信速度提升带来了跨平台系统的发展,也推进了物联网的发展,它们是相辅相成的。但这类跨平台的本质还是互联互通,依旧是两个不同主体的相互交流而已,正如我们所知,不同主体必然带来分歧与矛盾而导致整个物联网的网络中某一个环节出现问题,进而可能导致整个系统崩溃失效(当然可能有的时候通过重启系统就好了,但是我们不能抱着侥幸心理,毕竟未来可能有一些重要的应用场景不容这样的出错)。还有从华为鸿蒙系统中我们还可以看出,它依然需要适配不同类型的硬件(这也是一个制约发展的因素),所以这类系统缺乏自适应能力,依然需要别人的硬件设备来配合它(即来完善它所需要的应用场景体系)。

操作系统的开源与创新(我的遐思第三类操作系统的新途)(12)

由此可以看出,第(三)类操作系统应该具备:1)完全跨平台(即多平台同一性);2)自适应能力(即自主匹配硬件能力);3)万物归一物(即解决设备间的多主体模式)。等等,这三个特征具体思路将在后续文章中进行详细论述。还有其他的一些特征(目前还不完善)也会在后续文章中一一列举出来。

3、本章小结

这篇文章是《我的遐思——第三类操作系统的新途》系列的首篇,即引言部分。通过对前两类操作系统的分析论述,给出了第三类操作系统的概念,并且引出了它应该具备的前三个基本特征。

今天就暂且先说到这里,我在这里抛砖引玉了。

(个人观点,不争对错,仅供交流)

,