取代实时 OS!具有优先权继承功能的 Linux 问世

来源:互联网 发布:freebsd10.3配置nginx 编辑:程序博客网 时间:2024/06/03 08:56
【日经 BP 社报道】全球最大的嵌入 Linux 套件发行商美国 MontaVista 软件公司,日前成功开发出了通过加入具有优先权继承功能的互斥程序( mutex )而提高应答性能的嵌入 Linux 内核。普通 Linux 内核的最长应答时间约为 100ms,而此次开发的 Linux 内核则实现了数十 μs。普通实时 OS 的最长应答时间为数 μs,也就是说已经将应答性能提高到了可与实时 OS 抗衡的水平。该公司技术副总裁 Kevin Morgan 充满自信地表示:“这样就有望取代实时 OS。在嵌入领域已经不存在 Linux 不能满足使用需求的领域。”

  现在的嵌入 Linux 绝大多数采用可在内核执行路径的中途进行任务切换的抢先式内核。采用抢先式内核以后,与不采用此内核的普通 Linux 内核相比,可将应答性能的平均值缩短到 1/10 以下。但是,对于缩短最长应答时间则没有任何作用。因此,在应答性能要求较短的通信控制用途等方面无法采用 Linux。

  用互斥程序取代自旋锁

  此次开发的 Linux 内核,通过利用具有优先权继承功能的互斥程序,取代过去的抢先式内核中用于保护临界区的自旋锁,缩短了最长应答时间。互斥程序是一种 μITRON 等普通实时 OS 普遍具有的功能,是一种要想提高Linux应答性能就会考虑采用的技术。MontaVista 公司的 Morgan 表示:“加入具有优先权继承功能的互斥程序后,有一个缺点是线程锁定时判断优先权的程序会产生开销。因此,过去一直都不采用互斥程序。”如果是自旋锁,则只需单纯地等待任务即可,因此与互斥程序相比应用起来更为简洁。

  取消手机实时 OS,支持多内核

  MontaVista 公司的目标是将此次开发的 Linux 内核主要应用于手机。现有的手机绝大多数由基带处理芯片和应用处理器单独运行不同的 OS。因为通过与基站通信进行呼叫控制的基带处理芯片要求具有较短的应答时间,过去的 Linux 不能满足要求。比如,安装 Linux 的 NEC 手机,Linux 目前是在应用处理器上运行,而基带处理芯片则运行μITRON。

  如果能在应用处理器上运行此次开发的具有优先权继承功能的 Linux 内核,就有可能可将过去由基带处理芯片所做的呼叫控制处理移交给应用处理器。这样,就可以取消现有的实时 OS。由于 OS 只有 Linux 一种,因此不仅开发效率有望提高,通过省去基带处理芯片,“还有助于降低手机的生产成本。”( Morgan )另外,由于此次开发的 Linux 内核还支持对称多处理器架构(SMP),因此假如使用多内核应用处理器,就能在保持整个处理性能的情况下,省去基带处理芯片。

  MontaVista 公司对于此次开发的 Linux 内核,准备通过公开源代码,吸引开发商加入开发团体,以便今后仍能继续加以改进。此计划的网站请点击此处。另外,美国 Timesys 公司也在自主开发应答性能与该 Linux 内核相同的 Linux 内核,不过“不是开放源码,希望以此突出自身的特点。”( MontaVista公司的Morgan )(记者:进藤 智则)

来自:日经BP网
原创粉丝点击