即使不从金钱方面考虑,这种升级也可能会带来时间上的较大浪费,例如备份文件、卸载老版本并安装新版本等。与之形成鲜明对比的是,Linux用户期望升级时间的到来就如同期待他们的生日到来一样。举个例子来说,对于一个新版本的 KDE或Gnome,其中比较酷的新功能和用户体验都是免费的。和升级Windows软件所不同的是,Linux程序升级通常是通过操作系统本身来处理的。
Linux用户通常可以休闲的坐等升级管理器自己来完成这个任务。Linux应用程序的升级时间通常就是用户放松的机会。开源软件开发者送给他们的用户一个可以不断带来惊喜的礼物。
一、用户驱动是开源的最大优势
Vyatta负责战略和市场的副总裁Dave Roberts表示,“大多数开源项目会非常迅速的推出新版本。这个过程是社区推动式的,当然有时候也会有商业化公司参与其中。所以用户往往会看到预期的新功能。但是通常不会对新功能感觉太意外。如果一个开发者经常与他的用户讨论,新功能通常很难是一个秘密。这个过程是非常透明的。”
对于一个开源项目来说,通常在用户和开发团队之间会有不断的讨论或交流,这会让产品用户做好是否需要升级的准备。相比之下,专有软件公司是在它们自己的意愿的驱动下开发产品,而不是用户的直接参与。
一个新版本的专有软件产品进入市场通常需要花费12到18个月的时间。而开源软件则可能每个月都会看到几个不同的版本升级。
在开源世界中,用户更靠近开发。升级通常更细化,Roberts表示。新版本发布的成本要小的多,通常只是贴出供用户下载的新版本地址,不用再刻录成光盘或进行包装。
二、升级频繁带来的潜在影响
尽管用户通常期望在他们喜欢的应用程序中看到更频繁的新功能“礼物”,软件开发者对于这一过程却往往抱着矛盾的观点。
“频繁发布新版本是一把双刃剑。软件开发者一直在对他们的应用程序进行修正和打补丁。不利的一方面是,开发者并不希望总是在进行升级,”开放解决方案联盟(Open Solutions Alliance,OSA)的创始人之一,JasperSoft公司的首席技术官Barry Klawans表示,“开源中的商业化厂商通常不愿意频繁的进行这种升级。”
在Linux中的升级过程通常被认为是相当完美的。在很多Linux版本中,对操作系统的升级是通过一个类似微软的升级管理器来自动完成的。软件应用程序可以通过升级管理器来进行跟踪,这样用户通常除了点击以下OK按钮和输入密码外,通常不需要做任何其他的事情。
在大多数Linux发行版中,开源软件(通常被称为“软件包(packages)”)已经按照要求的格式被社区加入到软件库中。其安装脚本可以自动被操作系统处理,并且被增加到升级管理器程序列表中,以自动检查可用的更新。
但是,对于来自社区软件库之外的应用程序包,用户不得不手动的运行安装脚本。最初的安装和将来的升级可能只能通过用户在终端窗口中输入命令来实现。这多少有点让我们回忆起微软的DOS时代。
“某些软件公司在处理升级的时候做的比较好,它们多数是商业化的公司,”Klawans表示。