社区编辑申请
注册/登录
“开放麒麟”发布,国产操作系统就要站起来了? 原创 精选
系统 Linux
目前国产操作系统还不够成熟,尤其软件生态比较匮乏,市场份额太小,这些是当前国产操作系统的薄弱环节。不过,“开放麒麟”的出现,将进一步推动国产操作系统的创新发展。

近日,我国首个桌面操作系统开发者平台“开放麒麟”正式发布。

该平台由国家工业信息安全发展研究中心等单位联合成立,目标通过开放操作系统源代码的方式,让更多的开发者共同参与国产开源操作系统的开发,从而打造具有自主创新技术的开源桌面操作系统。

Image

图片来源@央视新闻

说起国产桌面操作系统,正如之前的文章《首个全链路国产操作系统要诞生了,OpenCloudOS首度披露技术路线》所说,在相当长的时间里,我国操作系统产业处于“多、小、散”的状态,现在市面上能查询到的“国产操作系统”至少有15种,而真正能长期坚持版本迭代的只有麒麟软件、统信软件和中科方德三家。

在众多国产操作系统中,麒麟操作系统(KylinOS)因为有国家队的背景,可能是名气最大的。2020年,“天问一号”成功着陆火星、2021年神舟十二号载人飞船将航天员送入空间站,搭载的都是该系统。

如今,除了中国空间站,麒麟系统已经在天问一号、北斗工程、嫦娥五号,以及金融、能源和交通等领域广泛应用,在国家的重大项目上都能看到麒麟操作系统的身影。

Image

中国空间站电脑上的麒麟操作系统,图片来源@央视新闻

这也可能是为何国内首个桌面操作系统开发者平台要选用“麒麟”这个名字。从某个角度说,麒麟是最能代表国产操作系统的标杆。 

四不像的操作系统 

上个世纪90年代,由于国际环境的动荡,国内的有识之士基于安全和自主的考虑,提出要做自己的操作系统。

伴随着操作系统国产化的呼声越来越强,不少国营及民营软件企业相继成立,而且全部主攻开源的Linux路线,“麒麟”就是在这一背景下诞生。

“麒麟”作为“863计划”的重大攻关科研项目,于2002年立项。

高层对这一项目寄予厚望,让国防科技大学、中软公司、联想公司、浪潮集团和民族恒星公司等当时国内领先的机构和企业共同承担研发任务。

然而那个时候国内在操作系统的底子还比较薄弱,纵然麒麟受到重视,但起初构建系统时,研发人员仍显得没多少头绪,仅是讨论采用哪种技术路线就用了大半年时间。这是因为尽管Linux是开源的,可以避开微软等公司的垄断影响,但当时国产化浪潮下,操作系统被寄予的希望是“全面创新”,直接采用Linux可能会存在一系列问题,比如存在知识产权方面的隐患。

再加上当时Linux并非一家独大,加州伯克利大学的FreeBSD、IBM的AIX以及Sun公司的solaris都是有力的竞争者,同时,Mach的微内核架构也风头正劲。最后,研发团队打算将各系统的优劣全部吃透,然后把其中的优势借鉴整合在一起。

在花了四年的时间后,研发人员借鉴了四家的代码,将四种不同技术架构整合成一个系统:底层采用Mach微内核为蓝本,服务层采用FreeBSD系统为参照,应用层采用Linux作参考,界面仿照Windows来设计。由于新操作系统是一个“四不像OS”,这与中国神兽“麒麟”有相似之处,于是这个系统就被命名为“麒麟”。  

 “完全独立自主不现实” 

2006年麒麟操作系统正式诞生后,国家曾经尝试将麒麟操作系统替代进口系统工作,但是由于兼容性缺失的问题,麒麟操作系统基本无法使用。

Image

早期的麒麟操作系统界面,图片来源@网络

例如一个新上市的ATI显卡,如果开源社区没有代码,研发团队就要用反向工程破解代码,然后分别适配Mach微内核、FreeBSD系统层、Linux应用层,才能让它在麒麟系统下可用。

再加上FreeBSD日渐没落,微内核架构被行业主流放弃,Linux也不温不火,几乎没有社区帮助银河麒麟开发代码。这一切都让麒麟处于尴尬的境地。

更尴尬的是,当年4月27日,网友Dancefire在一篇技术分析文章中称 ,通过对麒麟操作系统2.0版本进行反汇编,麒麟操作系统与美国开放源代码的FreeBSD操作系统5.3版本相似度在90%以上。

换句话说,麒麟操作系统仅仅是对开源的FreeBSD进行了一定的修改,而不是新闻媒体所说的 “中国独立研发成功”和“拥有完全自主版权的内核”。

一石激起千层浪,越来越多的网友开始质疑麒麟是原创还是抄袭。

事后来看,麒麟的问题并不是做不到“独立自主”,基于FreeBSD进行修改也不算很严重的问题,因为FreeBSD是完全免费开源的,FreeBSD允许他人修改并使用其源代码。

而且,苹果的IOS也是基于FreeBSD/Unix进行修改的。

问题是,麒麟虽然声明过修改自FreeBSD,但当时的媒体大肆宣传的是“完全自主版权”“挑战Windows”,这就难免被国外的程序员非议。

麒麟内部的一位开发人员表示,期望完全具有自主版权,每一行代码完全自己开发,根本不现实。

尽管这位开发人员所言非虚:以当时国内各单位、公司的实力,用2-3年的研发周期,有限的人力资源,4000万人民币的研发经费,要从零开始,独立开发一个拥有自己内核的操作系统实在难于登天。

这是因为,开发操作系统是需要巨额资源投入的。以操作系统Windows为例,微软开发Windows XP调集了5000余名程序员,Windows XP有代码4000万行,在开发Vista所花费的研发费用超过了200亿美元。即便是开源的Linux,仅内核,根据人员投入的规模,据测算也耗资数十亿美元。这种规模的资金和人力是国内操作系统厂商难以企及的。

所以“花小钱办大事”在开发操作系统领域很难实现。不过在当时舆论环境下,开发人员的辩解是苍白无力的。在系统几乎不可用、团队涣散等情况下,麒麟项目逐渐进入了搁置状态。  

回到Linux 

2006年至2009年期间,开源操作系统Linux发展如火如荼,开发人员对于国产操作系统“自主可控”也有了新的认识,最终麒麟系统转向使用了Linux内核,此时主流软件只要稍微适配便可在麒麟系统上运行。

终于,基于Linux的银河麒麟3.0发布后,各党政军等重要机关才真正开启操作系统国产替代的大潮。历经坎坷的银河麒麟也终于活了下来。

2010年12月16日,民用的“中标Linux”操作系统和国防科大研制的“银河麒麟”操作系统在上海正式宣布合并,双方将共同以“中标麒麟”的新品牌统一出现在市场上,并携手开发军民两用的操作系统。

此后,越来越多的国产办公软件、财务软件、工业软件开始支持麒麟系统。对于党政军和大企业专网系统而言,麒麟系统也已具备了更可靠的替换条件。

不过中标麒麟操作系统软件虽然在看重安全的党政军市场已得到一定程度的推广和应用,且已能基本满足上网、影音、办公需求,但在看重体验的民用市场竞争力不强:即便惠普、戴尔、联想都有预装中标麒麟的电脑,但软件生态的贫乏使其根本无法与Windows竞争,预装中标麒麟的电脑大多在销售过程中,被零售商安装盗版Windows系统出售。

因此,以中标麒麟为代表的国产操作系统的崛起必须是整个产业的崛起,哪怕操作系统本身做得比Windows更好也是不够的,这也是为何众多单位联合推出了国产操作系统开发者平台“开放麒麟”。 

展望未来 

目前国产操作系统还不够成熟,尤其软件生态比较匮乏,市场份额太小,这些是当前国产操作系统的薄弱环节。不过,“开放麒麟”的出现,将进一步推动国产操作系统的创新发展。

尽管生态的建立并非一蹴而就,国产操作系统能否迎来曙光也还有待时间检验,但也许正如麒麟的技术负责人孔金珠所说:“核心技术靠‘化缘’是要不来的,必须靠自己拼出来、干出来。另外,关键核心技术要立足自主创新、自立自强,而自主创新不是关起门来搞研发,一定要坚持开放创新。”

参考资料:

1.《银河麒麟系统的前世今生》,浅黑科技,史中

2.《辉煌,从“麒麟”开始——记完全自主知识产权的国产服务器操作系统Kylin问世》,许振新

责任编辑:闫怀德 来源: 51CTO
相关推荐

2020-08-21 18:05:50

国产操作系统银河麒麟操作系统

2019-06-19 08:28:18

Windows操作系统Windows 10

2014-04-18 09:35:55

2019-12-09 09:41:30

Windows操作系统国产操作系统

2019-11-01 15:26:09

开源系统优麒麟

2021-02-05 20:00:03

国产操作系统操作系统

2020-12-25 12:26:31

操作系统openEuler麒麟信安

2014-08-07 09:02:36

操作系统

2016-08-10 20:35:47

操作系统Linux操作系统

2021-06-15 10:37:52

2017-10-23 21:34:56

2018-05-24 14:35:02

操作系统国产LINUX

2017-04-21 21:25:12

2018-12-19 12:03:02

操作系统WindowsLinux

2022-01-17 11:53:39

2020-06-05 14:18:08

瑞星

2021-04-19 09:45:40

互联网数据技术

2014-05-15 11:02:34

Linux操作系统国产操作系统

2020-06-04 17:58:20

安全UOS统信软件

2020-10-30 09:43:30

麒麟信安云桌面

同话题下的热门内容

如何选择适合的公共 DNSLinux终端居然也可以做文件浏览器?Linux 怎么防止 ssh 被暴力破解Linux下如何配置普通用户的sudo命令权限?如何在基于 Ubuntu 的 Linux 发行版上安装最新的 Vim 9.0Linux内存管理(Golang实现)Linux Kernel 5.19 正式发布,支持龙芯 CPU架构为有经验用户量身定制的 Linux

编辑推荐

Linux系统下安装MySQL的步骤详解CentOS与Ubuntu有什么不同?Linux下如何使用minicom USB串口为什么你可能想要略过Ubuntu 17.04?Linux中7个判断文件系统类型的方法
我收藏的内容
点赞
收藏

51CTO技术栈公众号