对操作系统开发相关的一些问题的思考

发表于:2011-10-11 09:42

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:hellochina15    来源:51Testing软件测试网采编

  在从事操作系统开发过程中,对操作系统相关的一些问题尤其敏感。下面这些内容,都是就一些典型的问题或观点,与朋友或同事有过讨论之后,形成的一些个人结论或想法。只是一家直言,不免有片面之处,欢迎朋友们批评讨论。

  对未来操作系统的发展趋势的思考

  我认为,操作系统正朝着按应用场景细分的方向发展,即针对每种应用场景,或某个特定的用户群,会有一个或多个与之适应的操作系统。比如,以前的操作系统,大致可分为桌面操作系统、服务器操作系统和嵌入式操作系统等三个大类。WindowsLinux是桌面操作系统的典型代表,UNIX操作系统在服务器(或大型机)领域一家独大,嵌入式领域,则存在pSOS、VxWorks、ucOS等操作系统。而到了当前的移动互联网时代,智能移动终端这个应用场景出现后,又催生了广泛应用于智能终端上的Android操作系统、Apple iOS操作系统等。随着云计算的兴起,云操作系统又有流行的趋势。可以看出,操作系统的类别(或种类)并不是一成不变的,而是随着应用的不断变化和演进,会有全新的操作系统被开发出来,以适应这些应用。总体呈现出一种按照应用场景进行细分的趋势。

  随着移动互联网的不断发展成熟,会逐渐催生出更多的应用场景,比如家庭网络、物联网等。由于体系结构的限制,传统的操作系统很可能不能适应这些新兴场景的需求,因此又会催生出一批更新的操作系统。

  本质上,这是由于人类的个性化需求不断增加决定的,与汽车等传统消费品的发展轨迹类似。最开始的时候,汽车型号单一,产量供不应求,人们的需求不存在个性化,只要有一辆汽车就行。这时候汽车制造企业的运营模式,是典型的存货型运营模式,即按照有限的几种型号,生产大量的汽车并库存,然后投放市场。随着汽车市场的饱和,人们的需求已不局限于有一辆汽车,而是要有一辆个性化的汽车,这样就催生了各种各样的汽车品类,比如SUV、商务车、跑车等。为满足个性化需求,一种汽车型号(或平台)已经不能满足需要,汽车制造商不得不推出不同的基础汽车平台,这些不同平台之间已经不能相互兼容。计算机发展轨迹与此类似。以前,人们只要有一台计算机就可以了,没有太多个性化需求(当然,个性化的硬件配置和个性化的软件,不能算本质的个性化需求,因为这些个性化特征,都是由统一的计算机平台满足的)。这个时候,计算机生产厂家只要生产一种计算机-IBM PC兼容机,即可满足客户需求。相应的,只要有一种操作系统,理论上就可满足所有人的需求。随着计算机的普及和网络技术的发展,一台计算机已经不能满足个人需求,人们不但希望能够在家里或办公室里使用计算机,更希望能够在任何时候都能够使用计算机。这样就催生了PDA、平板电脑、智能手机等设备的诞生。原来的操作系统已经不能适应这些新兴设备,于是新的操作系统应运而生。

  因此,操作系统随应用细分,以适应人们的个性化需求,必然是一种趋势。个性化的极限情况是,每个人都有一台独特的、适应自己的计算机,对应一个独特的、专门满足这个个体的操作系统。即在极限情况下,操作系统的数量,应该与人的数量相同。这符合经济学原理,因为只有完全满足每个人的独特个性化需求,才能挖掘出全部的消费者剩余,从而使得计算机厂商的受益最大。

  当前虽然已经有很多成熟的操作系统,但离真正的计算机个性化需求满足,还有非常大的距离。操作系统的数量,必然会以越来越快的速度增加。

  在当前各类操作系统已相对成熟的环境下,开发操作系统是否有必要?

  我认为非常有必要。根据上面的分析,操作系统会越来越呈现出应用场景细分的趋势,一个或几个通用的操作系统,已经不能覆盖所有的场景需求。这种情况下,新的操作系统需求就呈现出来。这时候如果能够提前发现这种新的应用场景,并及时开发出对应的操作系统,不论经济效益还是企业商机,都是非常大的。比如Android,其开发人员就是看到了移动互联网时代智能手机会得到广泛应用,而传统的操作系统又无法适应这种应用,于是才决定投入开发的。当然,这其中可能有其它因素,但是选定应用场景,并持续投入开发,是其成功的主要因素之一。

  但是不能盲目开发,一定要选择一个应用场景,针对场景的需求,做定制性质的开发。这里的难点是如何识别出应用场景,而不是操作系统开发本身。这就需要靠开发组织的业务嗅觉能力了。我个人认为,云计算终端可能是一个未来应用空间巨大的新场景。云终端的应用有其自身独特的地方,比如需要有很强的网络能力,能够支持各种网络接入技术,同时需要有较强的图形处理能力。而且其软件部分尺寸不易过大,在必要时能够很快进行重新安装,而不影响客户应用。还要有很强的被管理能力,能够按照维护指令,做一些升级、打补丁等动作,甚至重新安装。而且还需要考虑用户认证、通信加密等功能。显然,已有的操作系统不能完全满足这种需要,开发一种最新操作系统的需求必然会出现。

  再举一个例子,比如家庭网络应用中的家庭网关(HG,Home Gateway)。家庭网关需要支持多种多样的无线和有线接入技术,需要与各种各样的家用电器连接,比如电冰箱、空调、家庭电脑、电视机、微波炉等,有时候甚至需要与门铃、门锁、窗帘等完成连接。这需要非常复杂的数据处理能力和通信能力,同时要高度安全、高可靠、高效率。还有一些其它的需求,比如人脸识别、生物认证技术等。在已有操作系统上增加这些特性,其复杂度可能会比重新开发一个操作系统还要大。因此针对这种场景,开发一个专门针对家庭网关的操作系统,是非常有必要的。

  还有很多其它的场景,在此不一一列举。总之,随着应用场景的细分,硬件的个性化,操作系统开发需求不但不会消失,而且会以越来越强劲的势头凸现出来。

31/3123>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号