首页 > 代码库 > [开源名人访谈录] Philippe Gerum
[开源名人访谈录] Philippe Gerum
译至:http://www.advogato.org/article/803.html
译者按:这篇采访的时间很早,但有助于你了解Xenomai相关的背景。
这是对菲利普格鲁姆,ADEOS项目的共同领导者的采访。
ADEOS的目的是提供一个灵活的环境,在多个操作系统之间共享硬件资源,或是在一个单一的操作系统实现多个实例。
访谈
GNA:你好,你能给ADEOS两句让你的老奶奶都能理解的简单的说明吗?ADEOS的目标受众是什么?
菲利普:比方说,你想编写自己的内核,旨在提供非常具体的服务,但是你不想花时间去实现一套建立一个完整的O / S所需的常见任务,这是因为:1),它会转移你的主要目标,你本来是着眼于一个特定的技术领域; 2)其他内核黑客们可能比你更胜任这个工作。可以通过运行在和Linux内核相同的硬件环境上的kernel来解决该问题,它会为你管理繁琐的工作,如引导过程,存储管理等等。为此,你必须找到一个分享一些重要的硬件资源的有效方式,来使这两个内核可以在同一台机器并行运行,并提供了一种对各自应用的最适应服务。ADEOS就是这样一个共享层。
ADEOS的一个直接的应用是它在和Linux的相同硬件上并行运行实时系统,由于实时应用相对于硬件中断处理比普通的Linux的优先级更高,实时机器必须始终在Linux内核之前有机会处理任何触发的中断,从而使实时处理能尽快处理。实时意味着在处理事件时是确定的,ADEOS给RTOS提供了一个方便的层来实现实时性。在这个意义上,ADEOS是一个实时系统推动者。
GNA:介绍一下你自己,有多少开发人员经常给ADEOS项目做贡献,这个项目是如何推进的?
菲利普:我39岁,为一个开放源码软件服务和支持的公司Openwide工作,我写了大部分的ADEOS的代码库,除了2.4内核的PPC移植,它主要由Wolfgang Grandegger完成。其他几个人给我们提供了具体的bug修复和意见反馈。
GNA:这个项目是什么时候启动的,为什么要启动?
菲利普:这个项目有两个不同的阶段,第一个阶段可以追溯到2000年,当时卡里姆发表了名为“自适应域环境的操作系统”的论文,该论文描述了一个简单而聪明的方案上在一个硬件上的多个内核间共享相同的硬件资源,然后他举例说明了在x86硬件上通过“管道”的抽象方式来共享中断,根据不同内核在管道中的优先级来依次分发中断。因此,这篇论文提出了一种新的中断优先级方式使基于Linux内核的实时扩展可以不利用一些专有的实时操作系统的专利方法。
两年后,当时我正在开发一个基于Linux的GPL的实时扩展名为Xenomai,围绕该软件专利的范围的FUD已经变得如此激烈,任何提交不侵犯专利的GPL的实时代码似乎变得不可能。这是软件专利的大问题:他们被授予给相信他们先“发明”专利的那些人而他们不过是弄“明白”专利罢了,因此这些人要么是玩世不恭要么是一无所知,这足以让你感到紧张。
为了应对这种掠夺性的威胁,我决定去实现卡里姆的ADEOS,让我的基于GPL的Xenomai可以利用它,并最终不会被专利所阻碍。作为其中的一个结果,Linux 2.4.18的第一个ADEOS补丁已经于2002年6月6日发布。
GNA!那这后事情进展的如何?你的计划是什么?你如何看待ADEOS的未来?
菲利普:首次发布的几个月后,ADEOS已经被RTAI项目,一个著名的Linux实时扩展,所采用。你可以想像,这一举动显著地推动了ADEOS的开发。很明显,有一个庞大的用户基础来测试你的软件将缩短它达到成熟的时间。
此后,对客户端的内核的优先级中断管道的基本方案不断得到改进,并且还扩展到其他资源,比如陷阱,异常和其他任何感兴趣的源于内核的事件。
从第一天开始,这个想法就是在一个无缝的方式下虚拟化关键资源,提供一个架构无关的层,在这个层上可以和Linux并行运行的独立内核,除了x86,ADEOS已经被移植到IA64,有/没有MMU的ARM和PPC,我们也移植ADEOS到2.6内核中,这是目前我们的主要发展重点。
作为一个实时系统的实现者,ADEOS目前提供了在同一硬件上运行实时操作系统以及Linux的所需要的核心服务,更重要的是,目前ADEOS的进化为下一个被称为“融合”的RTAI技术所推动。通过这种方式,我们想要整合vanilla Linux和它的RTAI扩展到共生水平,给普通的Linux任务提供严格的实时保证。
未来的方向,包括将它移植到其他CPU架构,同时还致力于更好的组件化的代码库,为此,我打算将基本中断管道核心作为一个独立的组成部分,给只关心原始的中断处理服务的人使用。
GNA:你为ADEOS选择什么许可证,为什么?
菲利普:是GPL,因为它是一个自由软件。另外,也是因为ADEOS的实现了解并使用了Linux内核的内部操作,所以它遵守内核的许可证。
GNA:你能不能说一些ADEOS在真实世界的使用情况?
菲利普:对于冰山的可见部分,ADEOS最突出的用户是RTAI项目,该项目在GNU/Linux环境充分利用其管道技术来实现一个成熟的RTOS。RTAI已经有很多用户,包括全球范围内实行全面的实时 操作系统在业界,以及RTAI的安装基础的显著部分现运行在先进地球观测卫星。
菲利普:HYADES 项目,取决于ITEA程序(信息技术对欧洲进步)也贡献了ADEOS的安腾口的微内核的这化身目前使他们实时系统在大型的Linux / IA64为基础的SMP机器。
也有冰山,我的意思是谁使用先进地球观测卫星实现实时应用,在这个消息没有太大的噪音的各种个人和公司的看不见的部分,而你只是碰巧知道他们不约而同的,这是一个相当不错的签过:。他们没有做它大惊小怪,只是因为它的工作原理,期间这很好。
GNA:你有没有产业界或机构的支持,如果有,是怎么一个情况?
菲利普:我们刚才谈到了我们是HYADES项目组合的成员,泰利斯集团已出资IA64的移植,而最近,DENX软件工程慷慨地为我们提供了PPC移植的测试平台。
不过,目前还没有持续的工业或机构对ADEOS项目的赞助。
GNA:您是否在寻找贡献,如果是的话,什么样的贡献可用于该项目?
菲利普:我想这每一个自由软件项目正在寻求积极的贡献者。首先,我们想在更多的架构上移植ADEOS,我们手头上的硬件非常有限,所以我们主要是靠一些机会,像人们给我们一些特定的硬件,或是他们自己移植。接下来,我们希望拥有核心的软件开发技能的人去尽可能优化的中断管道,尤其是对那些内存带宽低的非x86架构。我确信,在将来后者的问题是很重要的。
GNA:你用什么工具开发ADEOS,为什么?
菲利普:就我而言,我的首选工具是我的大脑,顺便说一句,这或许可以解释为什么在过去的两年中我们提交了超过200个补丁用于修复以前版本中的bug或限制:○),我个人希望能够使用任何现有的调试器开发ADEOS,但是这在最需要的地方却无法选择:当错误在中断路径的某处时,调试器通常无法使用。现在的代码库是稳定的,我比较倾向于用特殊的手法来解决某一架构的中断延迟问题,因为调试器无法使用,至少在处理数百微秒时太麻烦。正如你所看到的,在我的工具集里没有什么特别的。
GNA:还有别的吗?
菲利普:享受乐趣。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。