
北京时间3月18日消息,美国科技新闻网站ArsTechnica近日撰文,探究了廉价迷你Linux电脑Raspberry Pi的专属操作系统Raspbian背后的故事。Raspbian基于著名的Linux发行版Debian开发,在问世之后就立即取代了大名鼎鼎的红帽Fedora,成为Raspberry Pi基金会官方推荐的操作系统。让许多人意想不到的是,Raspbian所有的开发工作均由两名狂热的Pi爱好者利用业余时间完成。
以下为文章概要:
在你花费35美元购买Raspberry Pi之后,这台迷你Linux电脑并未预装任何操作系统。你可以将你喜欢的操作系统载入到SD卡并启动Pi,整个过程并不困难。但与Pi兼容的操作系统是从哪里来的?
在Raspberry Pi刚刚度过一周岁生日之际,我们决定探究Raspbian--官方推荐的Pi操作系统--的前世今生。Raspbian项目凝聚了开发者每周花费60个小时、连续数周工作的心血。开发者需要自制一台ARM电脑,并重新编译1.9万个Linux软件包。所有这一切,都是由两个志愿者完成的。
意外的成功
尽管市面上有许多与Pi兼容的操作系统,但Raspberry Pi基金会通常对普通用户仅推荐其中的一款。在Pi诞生于一年之前时,官方推荐的系统是一款针对ARM处理器优化过的红帽Fedora操作系统。但仅仅几个月之后,Fedora失去了Pi社区的支持,被Raspbian取而代之。后者是一款专门为Raspberry Pi重新修改过的Debian系统,其作者是名为麦克·汤普森和皮特·格林的两个志愿者。
这一切的开始,要从汤普森对机器人的爱好说起。汤普森是曾是托管搜索服务商Atomz的首席技术官和联合创始人,该公司于2005年被WebSideStory收购。汤普森获得了Atomz出售价4500万美元中的一笔不菲金额,因此他决定暂停几年的工作,花更多的时间与妻子和孩子在一起。
一年前,他终于准备重返科技领域。机器人是汤普森的主要兴趣之一,而Pi看起来是很棒的承载平台。Pi价格低廉且体积小巧,很容易被嵌入到各种系统之中。但在当时,没有任何一款操作系统是完全为Pi的浮点计算单元优化的,而浮点计算在机器人项目和其他运算密集型应用中非常重要。
“在我最初接触到Raspberry Pi时,令我失望的是,没有一款Linux发行版能够利用Pi的高速浮点运算硬件,”汤普森说。“作为一名长期的Debian用户,我当时想,‘我宁愿试试Debian’,让它充分利用Pi的浮点运算能力,因为我长久以来一直希望能够在这些廉价的盒子上开发机器人。”
Debian当时已经为ARMv7处理器增加了浮点运算支持,但该功能并不支持Pi所使用的ARMv6处理器。”Debian最初并未预见到会出现类似于Raspberry Pi的产品。尽管Pi的ARMv6处理器拥有相当强大的浮点运算单元,但Debian并不支持,“汤普森说。因此,”他们开发的成千上万款软件包都不会支持Raspberry Pi。”
就像图形处理器处理图形任务很快一样,“浮点运算单元处理数学计算的速度非常快,”汤普森说。“浮点运算单元是一种外围配件,并非所有的计算机都有,但只要一台电脑有,那么你就一定希望充分录用它。”Pi的浮点运算单元来自于该机搭载的博通BCM2835 SoC。
如果操作系统不能利用硬件中的浮点计算单元,许多数学上的运算都必须使用软件处理,这拖慢了Pi处理任务的速度。这对于机器人来说非常重要,因为在处理来自摄像头和传感器的数据,以及精确控制马达时,需要进行非常复杂的数学运算,汤普森说。浮点运算对于多媒体处理、解码音乐、物理模拟等几乎所有数学运算密集型的任务都非常重要。

Raspbian项目创始人麦克·汤普森
富有成效的合作
摆在汤普森面前的道路很清晰:重建Debian操作系统并将使运行于Raspberry Pi。这需要将1.9万个软件包从Debian移植到Raspbian--这是一项浩大的工程。
不过,汤普森并非单打独斗。他在Raspberry Pi论坛发起了一个帖子,与其他有兴趣将Debian移植到Raspberry Pi的开发者进行讨论。这个帖子引起了Debian开发者、英国博士生皮特·格林的注意。
格林是这项工作独一无二的人选。他不仅拥有与汤普森共同带领该项目的专长,而且足够疯狂到真正去做这件事。
”我感觉,我可能是这个帖子里参与Raspbian项目讨论的人中,唯一一个掌握足够Debian知识的开发者,而这是移植成功的基础,“格林说。”不过我也相信,如果Debian项目内部有人对Raspbian项目感兴趣并足够疯狂来做这件事,那么他们也能完成这一任务。在Raspbian开发的过程中,Debian项目的许多人都为我们提供了帮助。“
在汤普森和格林启动Raspbian项目时,Pi尚未正式发售。即便当时Pi已经发售,这款设备也无法在合理的时间内重建Debian。因此,汤普森串联了八块飞思卡尔iMX53 Quick Start开发板,每一块主板都拥有1G内存、一颗1GHz ARMv7处理器,以及最重要的SATA硬盘。Pi不适合这种类型工作的主要原因之一,是USB存储带来的瓶颈,汤普森说。使用飞思卡尔主板开发Raspbian系统的效率比Raspberry Pi要高4到12倍。
汤普森在这些开发板上花费了近3000美元,但后来该项目获得的捐款足以补贴这些支出。除了单片式ARM系统,汤普森还购买了一台Linux PC作为Raspbian开发的存储库。这台存储库服务器从Debian存储库中获取源软件包,安排飞思卡尔系统的任务,一旦一个版本开发完成就收集二进制软件包。”所有开发包都会被上传到存储库中,然后与www.raspbian.org网站的外部存储库同步,用户则从www.raspbian.org 中获取软件包,“汤普森解释称。
最初,汤普森使用一台基于ARM的惠普Media Vault MV5150作为存储库的服务器,但后来由于需求的增加而升级至英特尔系统。尽管每一块飞思卡尔开发板都拥有独立的硬盘,但主要的存储任务是由存储库服务器的500G硬盘完成的,这块硬盘现在已经有三分之二满了。下面就是这套系统最初的样子:
推荐阅读
C114讯 3月18日下午评论(岳明)让我们把时钟拨回到两年前,为了些许非核心技术,华为和中兴在德国、匈牙利等欧洲国家展开了一轮司法诉讼。当时就有业内人士感叹到,同为民族企业,为了相互抢夺市场,不惜以技术含量极>>>详细阅读
本文标题:35美元电脑Raspberry Pi的OS是如何诞生的?
地址:http://www.lgo100.com/a/05/20130319/263325.html

网友点评
精彩导读
科技快报
品牌展示