微软 mysql Android apache HTML5 开源 Ubuntu shell google php linux wordpress linux命令 java nginx centos Firefox Windows 程序员 Python

Linux软件包依赖演化显示捕食者和猎物的关系

普林斯顿的一组演化生物学家研究了Debian发行版的演变,分析软件包的依赖和不兼容性,发现包依赖的演化显示出了某种捕食者和猎物的关系。报告发表在PNAS上。研究人员从1993年开始,统计了Debian GNU/Linux的每个稳定版本,比较了每个版本的包数量变化,跟踪软件包的生命历史,观察新软件的引入和旧软件的弃用,并编译了x86版本,随机安装软件以衡量不兼容性。

他们发现,在3.0版前系统模块化呈指数增长,之后开始急剧下降,到了某一点后,模块化开始稳定下来。随着时间的发展,软件模块在体积和数量上都在增加,模块之间冲突的数量在减少,但单个模块之内的冲突数却在增加。研究人员称,软件包存在复用现有代码和不兼容出现之间的均衡,用标准生物工具建模的话,包之间的依赖类似于捕食者和猎物的交互关系,它们之间的冲突类似物种的竞争排斥关系。

延伸阅读

评论