Communix操作系统: 60多年前,一群小白程序员扒了一个俄罗斯的开源框架

60多年前,一群小白程序员扒了一个俄罗斯的开源框架,写了几行漏洞百出的代码,产品上线运营了,30年后新的CTO实在看不下去了,重构了部分代码,但框架依旧是旧的,又过了30年新代码和就框架严重不兼容,产品濒临崩溃,用户流失严重,
这时我们该:
1、继续修bug打补丁;
2、换个框架重构代码;
3、干脆换掉这些程序猿;

关键是那个开源框架糟烂得很,还没哪个使用它的产品成功过,后来连俄国人自己都抛弃不用了

Communix操作系统最早是两个德国人Marx和Engles开发的(称为Communix基础版,或Communix 1.0和2.0),遵守GPL,它的早期支持者曾经先后组织过两个国际讨论区。

当时少数先进的国家都使用最早由英国人开发后来在美国得到大力发展的Libertix,亚洲、非洲和澳洲人当时本土更古老的操作系统已经或濒于崩溃,多数成为受Libertix主机控制的远程终端。相比之下, Communix支持的机子很少,但移植Communix的努力一直就没停止过。最早是以法国为主的一些人在巴黎、里昂等地移植过,但失败了。此后Communix分成两条路发展,一条是删除一些不兼容的代码,把Communix移植到Libertix上运行;另一批人在俄国著名程序员 Lenin的领导下,在俄国移植Communix获得成功(第一次发行时称为俄版Communix beta或Communix 3.0 beta),俄版Communix一度做到15个主节点、20多个子节点的大规模并行Cluster,并影响到亚洲、东欧、拉美等一些地方。

在Lenin之后,俄版Communix项目的两个CEO对Communix 3.0正式版出现了意见分歧。势力强大的Stalin重视系统安全和运行效率,认为需要在已有的基础上继续优化俄版Communix代码;实力较弱小的Trotsky认为Communix必须支持更多的硬件,提供更多的功能。这次分歧以Trotsky失败告终。Trotsky和他的团队后来开发了自己的Communix(称为托版Communix或Communix 4.0),但除了在斯里兰卡短暂地装过一段时间以外,都是小用户,这些用户又加入了很多自己的东西,且互相不统一,Trotsky死后没人整理,因此托版Communix非常乱。而由Stalin的团队打造的Communix 3.0正式版因为过于注重系统安全和效率,导致接口不够友好,娱乐功能少,不能及时更新一些新功能。Stalin的继任者由一个极端走向另一个极端,他们片面追求漂亮接口和娱乐功能,甚至干脆向欧美的Libertix购买这些功能,放弃了系统安全和效率,更不对代码作任何优化,导致系统经常当机和被黑客入侵,最后不得不改装Libertix。

在俄国成功移植Communix的消息也鼓舞着中国的Communix爱好者们,但早期的努力都不成功。一个姓毛的人说,俄版Communix光是汉化还不行,因为我们的硬件配置太低,短期内也不可能更新,所以必须为我们自己的硬件改写一部分底层代码。这种办法最后成功了,毛版Communix一度曾成为低配置计算机移植Communix的经典范例。毛还反对俄版Communix晚期的一些修改,认为这是向Libertix投降。为了及时清理Communix队伍内部的Libertix代理人,他发动广大用户学Communix和写 Communix,打造一个“六亿神州皆Hacker”的毛版Communix。他的主张遭到开发团队的反对,最后无果而终,但影响持续至今。如今,一个精通毛版Communix的程序员往往被看作是危险的黑客,而那些拿了很多认证的Communix程序员都在跟Libertix学接轨。

也有人认为,所谓的“毛版Communix”其实是用户的误解,毛在中国发布的操作系统的正确名称是Maox OS,这个系统仅仅只是借鉴了Communix的目录结构等标准,与Communix并无代码上的继承关系,只能称之为“Communix Like”系统。

到70年代后期,毛版Communix由于缺乏对于新硬件和新技术的支持,同时本身的大量漏洞也暴露无遗,已经变得很不稳定,此时一个中国Communix开源小区的程序员Deng更改了一部分Communix的内核,采用了微内核技术,这个改进最初在一定程度上解决了原版Communix对内存调用存在的内存泄露和内存管理效率低下的问题,同时提高了磁盘操作效率,并且比较成功地解决了许多应用程序在Communix与世界主流使用的Libertix的兼容问题。邓版Communix本来试图引进一些Libertix系统的部分特点,但由于考虑不周,设计上有不少漏洞,更由于Communix本身固有的弊病和程序员Deng及其后继者无心也无力从根本上对Communix的内核进行更新,导致邓版Communix运行30年后出现少数进程劫持了系统核心并占用了大量资源的情况,系统的稳定性和安全性看来已出现了严重的问题。

当今世界,除中国仍在使用Communix外,还有朝鲜、古巴、越南等少数国家也在使用Communix。朝鲜的金版Communix系统是毛版Communix系统mini版,又称毛版Communix系统朝鲜语版。由于朝鲜的硬件配置仍然较低,适应低硬件配置的毛版Communix系统朝鲜语版运行仍然比较流畅。古巴的Castro版Communix系统类似于金版Communix系统,而越南人使用的胡版Communix近年来经改良后则更像中国的邓版Communix。此外,尼泊尔有部分人宣称他们要在尼泊尔安装毛版Communix系统,但又有人说尼泊尔人的毛版Communix是“山寨版”的Communix。