所有包含 tag  ‘qnx’  的文章

Neutrino 要见光

圣者 QNX 渡过了 River。他在逆流中走了整整的一夜。现在他结实的身体象一块岩石一般矗立在水面上,左肩上扛着一个娇弱而沉重的孩子。圣者 QNX 倚在一株拔起的松树上;松树屈曲了,他的脊骨也屈曲了。那些看着他出发的人都说他渡不过的。他们长时间的嘲弄他,笑他。随后,黑夜来了。他们厌倦了。此刻 QNX 已经走得那么,再也听不见留在岸上的人的叫喊。在激流澎湃中,他只听见孩子的平静的声音,——他用小手抓着巨人额上的一绺头发,嘴里老喊着:“走罢!”——他便走着,伛着背,眼睛向着前面,老望着黑洞洞的对岸,削壁慢慢的显出白色来了。

早祷的钟声突然响了,无数的钟声一下子都惊醒了。天又黎明!黑沉沉的危崖后面,看不见的太阳在金色的天空升起。快要倒下来的 QNX 终于到了彼岸。于是他对孩子说:

“咱们到了!唉,你多重啊!孩子,你究竟是谁呢?”

孩子回答说:
“我是即将 open source 的 Neutrino。”

----------------

QNX 深吸一口气,回头看看过去的旧时代,轻声说,我们把 Neutrino open source。

他们今天表态,Neutrino 将开放源代码,并计划和外部开发者交互。

第一阶段发布的代码包括 QNX Neutrino microkernel, 基本 C library, 一些常见嵌入式平台用的 BSP。理论上大家最感兴趣的自然是 Neutrino 内核,codename 我记得是 photon。因为 C lib 和 BSP 要么不会有太多花头,要么花钱可以买到,甚至要么通常会作为添头奉送,所以,内核可能是最有兴趣的部分--当然,这不是说 c lib 和 BSP 不重要,BSP 其实相当重要,只是,内核嘛第一确实花钱都不好买到,第二,符合中国人的技术处女情节,看见内核 code 才觉得自己不吃亏。

现在代码已经可以从他们的 subversion repo 里拉出来,不过匿名访问尚不支持,要先在 QNX Developer Community (myQNX) 上建个帐号才行。

另外,他们那档子基于 Eclipse 的 Momentics IDE 仍然要钱。

其实我不太确定看到我这篇文章的哥们里有多少了解 QNX 以及它意味着什么,几年前,在我的印象里我都恨不得说,你是电 你是光 你是唯一的神话,你过去的多年是个传奇,你有如雷贯耳的名声和备受尊敬的技术/市场地位。QNX 是圈里的神仙(之一),除了因为悠久著名的 Neutrino 外,还因为加拿大优哉游哉的日子而被人羡慕。在 GreenHills 或者 MontaVista 出来捣乱之前,和 WindRiver 等分享总额看上去不算大不过人均收入颇高的嵌入式市场,闷声发大财谁不喜欢。QNX 最著名的用户包括 Cisco,DaimlerChrysler, General Electric, Lockheed Martin 等,Cisco 的不少高端产品都用 Neutrino。如今世道不像从前,惺惺相惜的对手 WindRiver 被 GreenHills 啃了不少肉,还要应付嵌入式 Linux 的侵蚀,甚至自己都开始凑热闹做 Linux 了。多年前,关于 QNX 的那个故事是一张软盘内包括的图形环境,可以拨号上网,有浏览器……当然,从技术角度看,Neutrino 最响亮的名声来自,有那么讽刺的,无人有机会查验的 micro kernel 和 message passing 设计与实现。

尚不清楚会不会开放“完整的 Neutrino” --包括 Phonton 内核,协议栈,GUI,POSIX code 等等在内。不过不管如何,如果 OpenSolaris 是大餐,Neutrino 至少是不错的甜点。
和 OpenSolaris 做法类似的是 Neutrino 的授权方式。PR 里说,外部开发者可以选择将自己的修改回馈给 QNX 社区,也可以保留权力 private and proprietary。当然,不要混淆的是,code 虽然可以自由免费地访问,商业产品使用 Neutrino 的 royalty 费用是没有被免除的,这也是除了比如 Nucleus+ 之外的大多数商用嵌入式系统的盈利做法。

open source 看来终是局势不利者,力量弱小者转换方位,改善形式的做法。

最后鸣谢 罗曼·罗兰 :)))

[tags]qnx, os, neutrino, photon, operating system, embedded, software, rtos[/tags]

Tags: , , , , , , , ,




Microkernel

这几周发现常去的一些网站上关于 microkernel 的话题不约而同地热了几分,甚是奇怪,莫非部分原因是最近 Apple 老是跳来跳去?

说详细一点,好像也确实也是从OS X,进而 Mach 牵扯出来的话题,故事的大背景有旷日持久的论战和纠葛不清的业界实践,这本身就算一出戏,何况还有像 Linus vs. Tanenbaum 这样的蒙太奇桥段。

OSNews 上 Diego Calleja 有篇文章 Why Monolithic Kernels Aren’t the End of the World ,对应 Thom Holwerda 的 Why I Like Microkernels,两篇文章都不是技术性很强的讨论。鄙人同意前者,因为强调恪守 microkernel 的框框的结果是至今没有没有一个可以令人信服的实现,我自己的观点一直是,不能实现的理想等于没有理想--也是基于同一个道理,我觉得 Google 进入中国采取的“顺从”措施可以理解--有时候革命并不总是好过改良,要取得进步也不意味着不能妥协。搬到现在我说的话题里,就是:是不是好的设计跟是 microkernel 还是 monolithic kernel 没有血统关系。Microkernel 所“固有(?)”的优势比如安全,稳定,模块化和易维护,并不是 monolithic 就不可企及的特性,而糟糕的设计同样可以让 microkernel 变成一无是处的四不像。有的人花20年时间用口水证明 monolithic kernel 不会有好的设计,另有一些人则用 20 年的时间动手来改进 Solaris 和 Linux 内核的结构,你觉得哪种做法更有建设性?现在已经有 kernel module,有FUSE,有 user-space driver framework 等等一系列尝试,加上 udev, klibc 或者 libusb 等等试验,Linux 正把一部分功能移到用户空间,当然,我们恐怕永远看不到一个最终变成了 microkernel 的 Linux 内核,不过不断前进,在实践中检验,这总是好的。

相比之下,microkernel 在业界的实践并不总是像理论研究的时候说得那般简单而又有优势,而且有时候人们的“以为”和实际实现常常有差别

Mach,Minix,L4 ,QNX --什么?Symbian OS ?鬼才知道--可能是 microkernel 在业界比较 solid 的事实存在。不过我们看看,Avie Tevanian 领导下的 Apple 也没有死板地把僵硬的概念引入 OS X,就像 ADC 在 Porting UNIX/Linux Applications to Mac OS X 里那样说的“The kernel is not a pure microkernel implementation, since the address space is shared with the BSD portion of the kernel and the I/O Kit.”;Hurd 可能是唯一一个构建在 L4(come on,nano-kernel?)上的接近产品的作品,可是连它自己都还没有得到大规模使用的机会;QNX ?我们怎么证明一个 closed source 的东西,Nucleus,说得和做的是一样的呢?

最后一个想法是,沿用并改良 legacy 本身也是一种极大的创新,这种行为并不因为没有使用 microkernel 就显得落后或者不好不酷不牛X,其需要的聪明才智和付出的努力并不亚于考察 microkernel 是否可用以及把 microkernel 移植到现有系统中。另外嘛,其更大的积极意义还在于对已付出的社会资源的节约。

我自己当然尊重并总是欣喜地关注各种探讨和实践,这些过程总能丰富知识,带来闪光的新想法进而带动现实世界的发展--只要不变成口水仗和毫无意义的指责这指责那就好。我们期待能和 Mach 这样的例子一样,涌现更多的好玩故事或者传奇:项目的 lead developer,Richard Rashid 1991年加入 Microsoft,在很多 Microsoft Research 的top-level 位置上待过,另外就是前面提到的 Avie Tevanian。

最后还有一个是 Apple Matters:How Long Will Apple Keep the MACH Microkernel? 这篇文章显得过于幼稚,漏洞多到像小马哥的风衣,权且一笑 ;-)

[tags]os, microkernel, os x, mach, qnx, mimix, l4[/tags]

Tags: , , , , , , ,




Feeds

Global: RSS for International Readers
China: RSS for Readers from China Mainland
Both feeds deliver exactly same content. The second one is provided for readers from China Mainland where FeedBurner is blocked.
如果您的 RSS 阅读器访问 FeedBurner 有困难,可以使用第二个 feed,内容完全一样。

Latest JPG Magazine

By Jennifer ChildsBy Prasad Dharmadhikaricafe du mondeLocal Diveso yellowfollow the linees