译至: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已经有全球范围内的很多用户,HYADES 项目也贡献了ADEOS的安腾相关的移植。

GNA:你有没有产业界或机构的支持,如果有,是怎么一个情况?

菲利普:我们刚才谈到了我们是HYADES项目组合的成员,泰利斯集团已出资IA64的移植,而最近,DENX软件工程慷慨地为我们提供了PPC移植的测试平台。

不过,目前还没有持续的工业或机构对ADEOS项目的赞助。

GNA:您是否在寻找贡献,如果是的话,什么样的贡献可用于该项目?

菲利普:我想这每一个自由软件项目正在寻求积极的贡献者。首先,我们想在更多的架构上移植ADEOS,我们手头上的硬件非常有限,所以我们主要是靠一些机会,像人们给我们一些特定的硬件,或是他们自己移植。接下来,我们希望拥有核心的软件开发技能的人去尽可能优化的中断管道,尤其是对那些内存带宽低的非x86架构。我确信,在将来后者的问题是很重要的。

GNA:你用什么工具开发ADEOS,为什么?

菲利普:就我而言,我的首选工具是我的大脑,顺便说一句,这或许可以解释为什么在过去的两年中我们提交了超过200个补丁用于修复以前版本中的bug或限制:○),我个人希望能够使用任何现有的调试器开发ADEOS,但是这在最需要的地方却无法选择:当错误在中断路径的某处时,调试器通常无法使用。现在的代码库是稳定的,我比较倾向于用特殊的手法来解决某一架构的中断延迟问题,因为调试器无法使用,至少在处理数百微秒时太麻烦。正如你所看到的,在我的工具集里没有什么特别的。

GNA:还有别的吗?

菲利普:享受乐趣。

[开源名人访谈录] Philippe Gerum相关推荐

  1. [开源名人录] Fabrice Bellard

    转载至:http://xiaohu.blog.com/2011/07/18/fabrice-bellard/ 转载说明:Fabrice Bellard也是开源的一个神一般的存在,我要说的是,这个法国人 ...

  2. Linux/Unix http://oreilly.com.cn/index.php?func=booklistcat=46

    Linux/Unix <学习vi和Vim编辑器(第7版)> Arnold Robbins, Elbert Hannah, Linda Lamb 著 O'Reilly Taiwan公司 编译 ...

  3. 重磅 | GitHub 2019 数字年报全文正式发布

    摘要 在开源日益重要的今天,我们需要一份建立在全域大数据基础上的相对完整.可以反复进行推演的数据报告(报告.数据.算法均需开源).本项目为X-lab 开放实验室团队发起,旨在通过分析Github全网的 ...

  4. 会讲故事的前物理学家万维钢解读、推荐过的书24本,好书一半

    图片来源:百度百科 最近几年看过的万维钢解读推荐过的书,前20本是得到APP上总结出来的,估计有遗漏,估计仅仅是得到有电子书的部分.后4本是在卖书网站上搜万维钢,结果中标明万维钢推荐的. 按4星.5星 ...

  5. StoneDB 团队成员与 MySQL 之父 Monty 会面,共话未来数据库形态

    「9月中旬,StoneDB团队成员有幸与开源数据库MySQL和MariaDB的创始人Michael "Monty" Widenius(后文简称为 Monty)见了个面,其随行的团队 ...

  6. Xenomai——实现一个GNU/Linux上的RTOS的仿真框架

    Copyright © 2002 Philippe Gerum [摘要] 一般来说,Xenomai 技术起初旨在帮助依靠传统 RTOS 应用程序设计者尽可能顺利移动到一个基于 GNU/ Linux 的 ...

  7. 程序员小吴的 3 月份文章汇总和一个小福利

    今天我把公众号「五分钟学算法」 2019 年 3 月份的文章汇总一下,方便大家查找,如果觉得不错,不妨转发/分享一波,小吴先感谢大家的支持,文末有个小福利~ 1.链表算法面试问题?看我就够了! 2.程 ...

  8. 探访联通总部,展望美好前景

    p { margin-bottom: 0.21cm; } 在我们中国, Linux 的前景究竟会怎样?本文讲的就是这个问题.很可惜的是, Linux 的故事由我嘴里面讲出来,有人就不爱听了. 3 月 ...

  9. 了解Linux实时内核

    了解Xenomai过程中,对现阶段的RTOS进行总结如下: 把现阶段的RTOS分成两个阵营: 非Linux阵营:VxWorks,RTEMS Linux阵营 :RT-linux,Preempt-rt,W ...

最新文章

  1. 数据结构:表达式之中缀转后缀
  2. Java实现把一个对象复制给另一个有相同字段属性的对象
  3. python网络编程教学_python网络编程学习初步
  4. 数据可视化|实验三 分析特征内部数据分布于分散状况
  5. 360——新式的流氓
  6. qt显示rgba8888 如何改 frame_Qt开源作品17-IP地址输入控件
  7. PPTV Docker集群的网络方案选型
  8. CCF201609-2 火车购票
  9. java list 之详解_Java高级技术之List详解
  10. 腾讯优图开源深度学习推理框架 TNN,助力 AI 开发降本增效
  11. ZedGraph webform 初学小例子 (代码有详细解释)
  12. PPT幻灯片放映计时器
  13. whatsapp协议分析
  14. 将<span>标签设为圆形
  15. 对比学习(二)-模型坍塌-infoNCE损失函数
  16. time(0) 是什么意思?
  17. 大数据Hadoop、Hive、Kafka、Hbase、Spark等框架面经
  18. Excel 2010 VBA 入门 140 在功能区添加按钮并运行VBA程序
  19. 深度学习代码学习笔记(一)——阶跃函数与激活函数的python代码实现
  20. Self Service Password部署

热门文章

  1. RK3566-平板电脑主板方案
  2. 无人机动力系统扭矩测量方法和测试必要性的研究
  3. oracle查询视图时慢,oracle视图查询速度慢
  4. 前端对emoji表情进行校验,后台实则差不多
  5. 小马哥---山寨高仿苹果x 主板型号s306 机型图示展示
  6. 基于jacoco插件,使用python脚本分析java项目测试覆盖率。
  7. 基于CNN的海面舰船图像二分类
  8. 九宫重排 蓝桥杯c++ 题解 字符串hash+bfs
  9. Android input 系统InputReader,InputDispatcher线程实例--UI死掉
  10. 程序员的乐趣,生成自定义二维码,5行Python代码就解决