魏永明 。 “自主”操作系统 (完)

Sina WeiboBaiduLinkedInQQGoogle+RedditEvernote分享




4 如何开发“自主”操作系统

4.1 开发“自主”操作系统的两种目的和策略

开发“自主”操作系统的主要目的有两种:一种是想再造一个类似 Android、iOS 的操作系统,并作为其竞争者;一种仅仅是为了在商务谈判和合作中获得一个比较好的筹码。当然,还有一种目的就是骗取政府的财政支持,对这类不良目的,不属本文讨论范围。

我们先猜度一下国内外这几年出现的一些“自主”操作系统,其目的是什么:

  • 中国移动通过博思通讯开发的 OMS。本质上 OMS 是 Android 的一个派生系统。很明显,中国移动开发 OMS 的目的属于前一种。中国移动希望利用自己强大的市场地位来左右手机供应商的 OS 选择,并建立起类似苹果那样的全封闭的平台和生态系统。可惜的是,OMS 并没有取得预期效果,在来自联通、电信的强大市场压力下,中国移动不得不允许 TD 手机使用正统的 Android 系统;OMS 也正在被市场淡忘。这里有个比较有意思的现象,Google 从来没有公开质疑过 OMS 系统,阿里 OS 的做法和 OMS 类似,却遭到了打压。这里有两个原因,一个是中国移动的市场地位摆在那里(加上还是巨型国企),Google 不敢轻举妄动,另外一个是 OMS 采用的是 Android 早期版本,那时候 Android 的市场地位还没有这么强。
  • 中国联通所谓的 UniPlus。可惜的是,UniPlus 似乎从来没有面过世,也许中国联通只是放了一个烟雾弹而已。要是真开发,目的自然应该和中国移动的 OMS 类似。
  • Firefox OS。这是 Mozilla 公司推出的纯粹基于 HTML5/CSS3/JavaScript 等网页前端开发技术推出的操作系统,和 HP 收购自 Palm 的 webOS 有类似的软件架构。HP 收购了 webOS 之后的半年,即宣告放弃 webOS,而 Mozilla 却希望通过类似技术的 Firefox OS 成为 Android 的竞争者。一会儿我们分析下为什么 Firefox OS 要比 webOS 有更强一些的生命力。
  • 华为提出要开发的“自主”操作系统。作为一个智者,任正非不可能不知道一个真正“自主”的操作系统应该是什么样子的。华为就算再有钱,再有人才,短时间内也是搞不定一个“自主”操作系统的(如前所述,主要是建立对应的生态系统太难了)。这么说来,华为开发“自主”操作系统,其目的其实就是做一个备胎,以便在和 Android、Windows Phone 等合作时能够有一个可以讨价还价的砝码。也就是说,华为并不是真的要做“自主”的操作系统;或者这么说,支持团队去做,做成 Android 那样最好,做不成 Android 那样,如果真有一天打起架来可以凑合用也行。
  • 阿里 OS。马云同志的野心很大,他做阿里 OS,就是要复制 Google 在移动互联网的商业模式,进而在移动互联网领域推广阿里体系的服务和内容。可惜的是,马云貌似不太懂技术,也没个明白人给他做参谋,结果被人害了,花了钱还被人捏住了七寸。最新的传言,说阿里 OS 要换将,继续再投个 2 亿搞。马云同志啊,光有钱是不行的,你身边还得有个把技术大牛帮你把关、出谋划策才行啊。

好,面对这两种开发“自主”操作系统的目的,应该有什么样的策略呢?其实策略很简单,不管你是真心还是假意,都应该按照本文第 3 章给出的“自主”操作系统之特征进行开发,除此之外,别无他法。任何期望找捷径的方法,都不可能获得成功。这里所说的找捷径的方法具体有:

  • 给 Android 整容。如 OMS、阿里 OS。
  • 忽略操作系统之生态系统的重要性,在 Linux 或其他开源操作系统内核、系统库等基础上包裹一个简单的框架而形成的操作系统。这种操作系统,其复杂度和 Linux 发行版相当,离本人定义的真正“自主”操作系统还差十万八千里。读者可能会问,这样的系统做备胎不是还行吗?为什么也得按照真做那样开发呢?你要知道的是,对手也不是傻子,人家看你的架势,就知道你不是真做——你起码得拉出真做的架势来,人家才能怕你啊!

顺便谈谈我对基于浏览器技术的 web 操作系统之看法。

理论上讲,浏览器可以做很多事情,甚至可以替代 PC 机上的通用操作系统。但是,最新的浏览器技术(HTML5/CSS3等),还存在一些技术上的问题。主要的问题有如下两个:

  1. 浏览器主要采用的 JavaScript 编程语言,本质上是一种难于管理(源代码保护、无法进行有效的软件架构设计、难于调试等等)的编程语言,同时内存消耗巨大,性能不佳。最新的说法是,Facebook 创始人直言全面采用 HTML5 的策略是个失误,正在向操作系统的原生应用转移。也就是说,JavaScript 语言难以承载一个良性发展的生态系统。
  2. 因为许多原因(主要是利益和政治因素),HTML5 相关的标准有分裂的迹象,同时进展缓慢。

HTML5 技术作为原生应用的一种补充,可以起到很好的作用,但是,如果要想在浏览器技术上建立一个真正可以和 Android 等竞争的操作系统,恐怕还需要很长的时间(技术上必须有突破)。要不然,Google 现在主推的应该是 ChromeOS,而不是 Android。

现在回答刚才提到的问题:“为什么 FirefoxOS 可以比 webOS 的生命力更加长久些呢?”主要的原因是,FirefoxOS 是开源的,有比较强大的企业在主导其发展,作为一个脱胎于开源基金会的企业(Mozilla公司),也能获得合作伙伴的一些好感;相反,因为 webOS 是封闭,HP 又没有能力像苹果那样打造一个完全封闭的平台和生态系统,所以最终的命运是被人抛弃了。虽然后来 webOS 也走上了开源的道路,但大势已去,HP 不亲自带头搞,光靠开源社区是搞不成的。

4.2 技术层面上的考虑

假定你是一名“自主”操作系统项目的技术管理者,你第一步要考虑的问题是什么?许多人的回答可能是:先选操作系统内核、基础库什么的。其实错了,第一步要考虑的应该是你打算选择什么编程语言作为原生应用的编程语言。

世界上的编程语言有很多种,有些语言贴近机器,比如汇编语言、C语言,有些语言贴近人,比如 Basic、Java,还有些语言用于特定领域,比如网页服务器端使用的 PHP,有些适合做不同软件之间的粘合剂,比如 Perl、Python。本文第 3 章已经解释了编程语言以及围绕编程语言形成的运行环境、框架是将操作系统区隔于其他操作系统的主要技术特征。因此,我们必须慎重选择一种编程语言。而且一旦选定了一种编程语言,“自主”操作系统在开发者看来长什么样,其实就基本上定了。

选择编程语言要考虑如下因素:

  • 这种编程语言是否易于学习和掌握?是否有庞大的开发者在使用它?
  • 这种编程语言是否具有高级语言的基本特征,比如,支持面向对象编程?
  • 这种编程语言是否是编译执行的?
  • 这种编程语言是否利于保护开发者的知识产权?
  • 这种编程语言是否有完整的工具链支持?
  • 这种编程语言是否有集成开发环境的支持?
  • 这种编程语言是否易于保护整个操作系统不会被恶意代码轻易破坏?
  • 如此等等。

其实很多读者看到这里,都会想到 Java 语言。是的,Java 语言或其派生语言如 C# 是构架“自主”操作系统的最佳编程语言。可惜,已经被 Android 和 Windows Phone 给捷足先登了。

如此一来,你可以考虑重新设计一门类似 Java 的语言,也可以通过其他手段,让你使用 Java 语言构建的操作系统有别于其他操作系统。比如,构建自己的虚拟机,如 Android 使用的 Dalvik 那样(Dalvik 和 Oracle 的 JDK 标准虚拟机有很大不同,从而让 Oracle 还挺难告赢 Google 的);你也可以用 Dalvik,但让类库、运行环境和 Android 不同(这样做的法律风险要大一些)。总之,你需要有自己的创新,全部抄袭是不行的。

确定了编程语言,接下来的工作其实就比较直接了,从上而下设计就是了。主要有:

  1. 定义和实现提供给原生应用程序的基础 API 和/或虚拟机。
  2. 在应用程序基础 API、标准 C/C++ 函数库和相关组件(通常都是开源软件)的基础上构建操作系统的运行环境和框架。主要涉及系统服务、模块之间的通讯机制,包括图形界面、浏览器引擎、OpenGL ES 支持接口等等。
  3. 同时选择操作系统内核,通常也就是 Linux,要与众不同,用 BSD 也行。
  4. 搞定集成开发环境和模拟器,让开发者可以在 PC 机上为你的操作系统开发应用程序。
  5. 让你的操作系统运行在真实硬件上,为开发者提供应用样例和文档。
  6. 持续迭代,让你的“自主”操作系统不停往前发展。

上面的第一点和第二点,是“自主”操作系统有别于其他操作系统,且支撑你可以和其他人竞争的关键点。往下的东西都不是构成“自主”操作系统真正竞争力的东西。

这么看来,其实也挺简单的。不是吗?貌似有钱、有个把技术上的明白人就能做到。技术上没问题了,市场、法律等方面的事情,请专业人员帮忙,中国这类人才还是蛮多的,缺的,其实还是技术人员以及懂系统工程和软件开发的管理人员。

4.3 快速搭建一个“自主”操作系统

这里给大家介绍笔者早先和美国一家公司合作,尝试搭建的一个操作系统,其实在当年这些东西的基础上,搭建出来一个有别于 Android 的开源“自主”操作系统还是非常快的。

这个系统使用了 Linux 内核和标准的 C/C++ 函数库,以及一些和 Android 体系结构类似的 C/C++ 运行库,使用了笔者公司的开源软件 MiniGUI、WebKit 浏览器核心引擎等等。基础的东西就这些。之上是开源的 Kaffe JVM(后来改成了 Cacao JVM),和符合 J2SE 规范的类库实现,再往上就是运行环境和框架了。见下图:

可惜的是,真正具有核心价值的运行环境和框架,是美国合作方自己开发的,我手里没有源代码。相信读者也能明白,美国合作方掌握的才是精华。

如果要在这套系统基础之上快速开发一个“自主”的操作系统,我们需要:

  • 重新定义类库,也就是基础 API,让我们的系统从灵魂上有别于其他系统。必要的话,优化或替代开源的虚拟机(淘宝最近开源了一个 JDK 虚拟机,不过是针对 J2EE 的)。
  • 全新设计和实现适合于智能手机的运行环境、框架。
  • 全新设计基本的智能手机应用软件。
  • 开发模拟器,并集成到 Eclipse 集成开发环境中。
  • 还有,这个系统是 2006 年开发的,我们还需要将底层的内核、基础函数库等更新到比较新的版本。

要做的工作还是蛮多的,但这个系统在 2007 年的时候,就已经可以运行在主频在200M Hz 左右的手机上了。

当然,这个系统离本人定义的真正“自主”的操作系统还有很大的距离。但是,起码技术上的方向是基本正确的,要知道,这个系统几乎是和 Android 同时发起的。后来在 2007 年,Google 宣布开源 Android 后,美国合作方敏锐感觉到了 Android 将是未来的趋势,就直接转向了 Android 平台,项目也就终止了。

5 给相关人员的建议

5.1 给政策制定者

这里所说“政策制定者”主要指的是“核高基”等政府资助项目的决策人。其实前面已经说过了,这里重申一下:

政府需要在更长的周期内(至少五年),考核受资助企业的市场份额是否有扩大,是否建立了良好的生态系统,让使用者、开发者欲罢不能,而不是简单的著作权证书和专利数量,或者是否达到了一个给定的出货量(因为出货量是可以作假的)。也就是说,我们应该重新定义“自主”这两个字,从“自有知识产权”向“有效知识产权保护下的自己主导”转移;在知识产权方面,要强调有效专利数量,而不是著作权;甚至应该要求受资助企业按某种许可证条款开放源代码。

政策制定者甚至可以参照本文 3 章给出的“自主”操作系统之定义,将整个“自主”操作系统的研发和推广分为三个部分:

  1. 科研类,两到三年为周期,以研究新的编程语言及其相关设施(如虚拟机及其优化技术)为主。
  2. 工程类,两到三年为周期,围绕指定的编程语言发展外围工具链(编译器、调试器)、开发工具、运行环境、框架等。
  3. 法律类,半年到一年为周期,研究和分析采纳已有编程语言面临的知识产权风险,如何规避等等。

政策制定者切忌急功近利,要按照客观规律办事,将科研类的课题交给研究机构,将工程类以及市场推广等方面的课题交给企业,将法律类的课题交给大专院校。只有这样,才能首先让方法正确,方法上正确,加上合理的考核制度,才能让钱产生真正的效益。

在花钱方面,在一盘大棋下的统一部署下,初期让多一些的企业或机构参与,一年一验收,逐步淘汰那些不合格的,最后剩下来一、两个企业就好。十亿美金,外加企业自筹部分,我看基本够了。

5.2 给大型企业决策者

有意开发“自主”操作系统的大型企业决策者首先要明白,开发“自主”操作系统是一个长期、艰巨的系统工程。甚至,你需要准备一大笔钱来和已有的巨头打官司(微软赔付给 Sun几十亿美金之后,才让自己的 C# 和 .Net 平台成为“干净”的语言和平台)。

另外,如前所述,不管是真心还是假意,都要拿出十足的架势来真做,而且,对内、对外都要强调这点。要知道,你期望得100分,下属大多数情况下只能给你 80 分;你期望得 1000 分,下属也许就可以给你500分。这样才能超出决策者自己的预期,才能收到更好的效果。

5.3 给“自主”操作系统的技术负责人

这事儿如果恰好让你负责,那简直是,怎么说呢,是个“扬名立万”的机会啊!你要知道的是,这事儿和制造“两弹一星”差不多。

首先你要掂量掂量,你有没有这个本事。所谓“没有金刚钻,不揽瓷器活”,说的就是这个道理。有兴趣的也别来找我,我做点小项目可以,真要我负责,我没这个本事。

另外一方面,你要是违背知识分子的良知,帮助一些不良人员骗取国家的资助款项,就更不应该了。这可是要被人戳脊梁骨的;有没有钱拿永远是小事,昧了自己的良心可是大事。

5.4 工程上的建议

在具体的研发实施过程当中,开发负责人必须特别注意工程方面的问题:

  • 先做什么、后做什么,或者那些可以并行做。
  • 不同的软件模块,应采取不同的软件开发管理模型。API 设计、框架等的开发,适合采用瀑布法模型;应用软件或者小型模块的开发,适合采用敏捷开发模型。但整个系统,应要不停迭代,所以版本控制非常重要。
  • 特别要注意代码的质量控制以及文档的全面、完备、简洁和逻辑性。

这方面,如果需要帮助,本人可尽微薄之力。

【全文完】

(15个打分, 平均:4.47 / 5)

雁过留声

“魏永明 。 “自主”操作系统 (完)”有20个回复

  1. dalviker 于 2012-09-23 2:24 上午

    开发一个类似Dalvik 的虚拟机不是易事,很难绕过oracle和google的专利。个人觉得比修改内核难度还大。

  2. 中国 于 2012-09-23 3:13 上午

    推荐个国产OS: Sylix 详看http://hanhui03.blog.163.com/

  3. NULL 于 2012-09-23 4:59 上午

    对于OMS,阿里云OS这样已经走出一步的操作系统,下一步该怎么走会更好一些呀?想看看作者这方面的想法。因为不管怎么说,他们毕竟也走出一步了,而且也有自己的一些东西在里面,也不是完全忽悠吧。

  4. TekTea 于 2012-09-23 6:01 上午

    华为已公开对外宣称要自研操作系统了,这是个非常明智之举,可能是基于现有Linux内核,但要是能和华为自研的海思芯片结合起来,先不说其兼容性、稳定性,凭借这个资格可以和供应商议价降低成本。

  5. Frank 于 2012-09-23 10:01 上午

    要注意 license 的问题. 最好避开采用GPL的开业组件. 否则将来在商业应用上是个麻烦事情.

  6. 老韩 于 2012-09-23 11:24 上午

    1.非常好的科普文章,深入浅出,适合发在媒体。赞作者一个。
    2.希望能看一篇类似的、针对网络设备/安全设备操作系统的分析文章,尤其是法律风险方面。
    3.想求证一个问题:国内市售的几乎所有“原生”Android终端都没有GMS,据说有GMS就不准销售,其原因到底是什么?我问过很多人,答案也五花八门,但是没有一个人能保证说答案是100%正确的。

  7. 新手0 于 2012-09-23 6:31 下午

    楼主谈到的OS跟传统意义上的OS(kernel部分)有很大的不一样啊,有没有更准确更专业的术语?

  8. 沙加 于 2012-09-23 7:32 下午

    楼主谈到的才是OS的准确定义,光内核不能算OS

  9. shuyong 于 2012-09-23 8:28 下午

    试着回答6楼:
    如果有多个答案都说得通,说明多个答案综合就是原因。总结起来就是GG和天朝的恩怨,两边都填堵,两边都使劲,就有了现在大家都不爽的局面。

  10. 淘酒仙 于 2012-09-23 10:05 下午

    魏永明这个真的把自己看得太高了,讲的东东没有任何实质,都是人云亦云的,特别说马云不懂用错人之类的,难道你懂?王坚虽然不是科班出生,但是也是当然在浙大当了系主任的,微软的10年背景,难道会比你不懂技术?马云做的是刘邦,能用好萧何韩信就可以了。。。

  11. spinlock 于 2012-09-24 5:19 上午

    一封情书

  12. 之上冰 于 2012-09-25 9:18 上午

    楼主很强

  13. as 于 2012-09-25 6:51 下午

    不假但也是够大够空,没什么实际意义。

    os的意义在于平台,中国软件早让盗版搞垮了,没有人才os本身弄不起来。

    有了os,但它存在的意义在于平台开放,老是强调自主可谁愿意和你合作,苹果系统好不好,毁就毁在封闭上被win95打败,这点任正非还是有自知之明的。

  14. billy 于 2012-09-27 5:33 下午

    转tbsoft观点:

    作为早年开发过较完整DOS GUI系统和嵌入式GUI系统的老码农,赞成作者的观点。

    码农出身的创业者,往往对系统底层的实现关注非常多,炫耀自己在底层和基础实现上使用了何种何种新技术,具有如何如何好的性能,却往往忽略了如何为自己的系统创建一个完整的生态系统,至于商业环境就更谈不上了。

    在公司中,很多对底层技术研究很深的码农却很难上升到高层,码农和测试以及市场人员往往还会发生激烈的冲突,都与码农缺乏软件生态系统和商业环境的整体观有很大关系。

    “你做出来的东西不能只有你自己觉得好用,要别人觉得好用并愿意用!”这句话说起来容易做起来难。

    不仅仅是操作系统,可用于支持用户二次开发的平台,例如GUI系统等,都存在生态系统的概念。只有生态的系统的形成,这种平台才有被用户持续应用的价值。

    在早年Linux时代(2000年左右),此时Linux GUI(例如KDE、Gnome等)的华丽程度已经不亚于Windows,但其在桌面市场的占有率几乎是0。人们往往将这种现象的原因归咎于没有足够的Linux桌面应用软件支持,但究其深层原因,就是当时的linux没有形成“应用程序开发支持-实际桌面应用”的完整生态系统。

    在2002年,基于虚拟机的下一代应用程序开发,例如Java、.Net/C#等的广泛应用已成定局的情况下,Linux应用程序开发还坚守着C/C++。尽管老码农对众多新兴编程语言很不服气,认为在底层开发上远远不能代替C/C++,但是基于虚拟机的软件开发克服了本机代码开发中的跨平台行、内存泄漏等诸多问题,对于大型软件开发的质量保证是非常重要的。此时的坚守还存在着开发库不成熟,IDE落后、稳定性差等一系列严重问题,可以说当时的Linux生态系统难以望及Windows之项背。

    因此Linux的全面溃败就已成定居,这一结果甚至延续到了今天。直到Java、Eclipse等成熟IDE的推广普及开来,在Web服务器应用程序开发上,Linux才夺回一些占有率。

    今天Android的成功,也验证了完整生态系统建立的极端重要性,其正是以完整生态系统成熟为标志。之所以Android能吸引大量Java程序员的一个重要原因就是能使用熟悉的现有Java编程语言与开发工具,且开发难度与传统Java应用相仿。

    自主操作系统以及自主支持用户二次开发平台的生态系统远远比底层代码更加重要,我们没必要从轮子做起,但有必要让做出来的车傻瓜都能开,而且大家都愿意开,愿意买。

    tbsoft作品简介:

    嵌入式GUI(TBsoft-GUI包括试用版和文档)

    TBsoft-GUI——能支持像Visual Basic一样事件驱动的嵌入式GUI
    ●简洁易用的全事件驱动型GUI,不是消息驱动,无需使用长长的switch-case语句。
    ●极好的可移植性,适应8位、16位和低档32位系统,适应各种LCD,并为MCS-51和Keil C51做了特别优化。
    ●以控件为中心的GUI,支持按钮、文本框、菜单、对话框……等多种控件,控件全部支持事件处理。
    ●增强的汉字支持,直接支持西文汉字混合显示,特别支持12×12点阵汉字,较小的LCD能显示更多的汉字。
    本试用版本是可用于DOS的试用版,完全可直接用于工控机等基于x86的嵌入式系统。如果有需求,我们可以免费提供可用于MCS-51单片机(增强型)和KS0108 LCD控制器的评估版本,并提供评估板电路。

    化工博士,精擅Bomb制造,可来人来函联系billy定制面谈。

  15. shuyong 于 2012-09-28 12:31 上午

    呵呵,上文有点软哈。

    前面的观点很好。我赞同。但是中间的关于Linux Desktop失败的原因分析,则流于人云亦云了,而后的语言之争,就没有必要了。各种编程语言,孰优孰劣,隔不久就会争论一次,吵得天翻地覆,没有一个结果。各自散去后,积聚口水,过一段时间后再吵一次。对事件的分析,没有任何助力。JAVA的推行,IBM这个大家伙是出了大力的。”.NET/C#”的广泛应用,靠的是WINDOWS这个推土机到处碾平对手达成的。无缝地跨平台开发,始终是一个幻象。基于虚拟机的开发,需要移植的是一个平台。这个工作量也是和其它平台相当的。在Android平台下开发,和在JAVA平台下开发,其实是两回事。它们相似之处就是语言语法了,这点骗了不少JAVA开发人员进来,然后大家头痛不已。内存泄漏的问题,不能只靠虚拟机和语言。现在不知道有多少人因为Android里面的垃圾回收狂转而影响性能这个问题头痛不已了。内存泄漏的问题的解决,得靠提高码农的素质,在成熟的框架下遵守一定的协议来完成。相关的编程思想,应该是跨平台的。没有机会看过WINDOWS的代码,但我相信WINDOWS大部分基础部件应该是用C/C++编写的,OFFICE软件应该也如此。Object-C不知道被多少人骂过,但不妨碍它在排行榜里不断上升。因此,今后在开发过程中,对语言的要求一定是混搭的。而我们这些码农,最终一定是要掌握混合编程的技术。到什么山头唱什么山歌,如是而已。

    所以我认为,一个平台的成功,和选择什么编程语言没有什么直接关系。回过头来看看这些平台成功的过程,还是很有意思的。平台成功的基础,是好的技术。这是码农最出彩的地方。好的平台,要先有好的架构,然后是组件和中间件,然后是好的集成开发工具,层层递进。整个平台,至少后面十年还要有进化和扩展的可能。这些,在各大公司有较多积累。实现上各自有各自的精彩,没有说谁压谁一头的。如果细细琢磨,其实大家都有很多相似的思想,相似的组件。有时中间件暴露出来的接口,逻辑上都是相似的。这很有意思。经过这些年的积累,我相信国内的码农有不少人可以设计和实现类似档次的平台了。刚出来大多是很幼稚的,困难的是要熬好些年才能成熟。这点国内的老板们做不到。见过这么多的项目,还很少见到过,如果一个项目投入快一年还没有回报,老板还不急得像热锅上的蚂蚁的。而现在smartphone上面热门的三个平台,从开始投入,到看到希望,每一个都至少寂寞了5年。而后是商业模式的创立。这点要的不是聪明,要的是智慧,要的是高度。通俗的讲,就是拉拢大多数人一起做生意,再细枝末节的同伙,都可以喝到一口肉汤。这点国内的老板们还没有这个能力,还没有这个水平。再后面是商业手段,这点各个老板倒是玩得出神入化。但是没有前两者的支撑,加上爱赚块钱的习惯,现在国内要创建一个商业上成功的平台,一个生态系统,5年内是不现实的。HW的任老板是IT业界走得最远,想得最多的大人物了。看他2012的讲话,总结起来就是:继续跟随,有些弯道可以超车,海思是备胎。哈哈,有些使命还是留给首席看好的90后去愁白头吧。

    BTW,我看TBsoft-GUI的广告词,少说了几个重要的功能。面向深度嵌入式领域,首要的是可靠性,进一步的是实时性,然后是对各种外设的支持情况,后面才是GUI在各种RTOS上的可移植性。在深度嵌入式领域开发,实现GUI层耗费的时间不会很多,最重要的是业务模型的理解和映射到有限状态机的实现。突出GUI模块,不是很吸引人。

  16. billy 于 2012-09-28 3:08 上午

    to 楼上:

    tbsoft-GUI只是tbsoft童鞋多年前的作品之一而已,并非用于商业化,你可以检索到的信息已经是五年前的信息。

    这里引用只是像魏sir列出案例以证明tbsoft童鞋有这方面的开发经验,仅此而已。

    最后我的定制是说的bomb制作,并非tbsoft-gui本身。

    所以,不算软文,观点转述而已。 :)

    tbsoft最近数月的工作内容为软件无线电,有兴趣了解可以在11月份莅临魔都与之近距离深体验。

    预祝全球弯曲群友中秋国庆双节合家快乐!万事如意!身体健康!

  17. 乐看小小说 于 2012-11-26 6:42 下午

    深度拜读。感谢魏老师的好作品。

  18. guohui 于 2012-11-29 1:13 上午

    好作品,论述深刻

  19. CD 于 2012-12-01 6:58 下午

    有进展吗

  20. cracked 于 2012-12-02 9:44 下午

    华为要研发OS了 首席快回去吧。