当前位置: 首页 > 工具软件 > egui > 使用案例 >

开源egui 之 动员

岑驰
2023-12-01
 
       我想以叙述我的经历开始这个动员,试图鼓励更多的朋友们参与这个开源项目。
       1999年大学毕业后我去了南京自动化股份有限公司工作,负责电力系统微机母线保护的软件维护以及二次开发。使用C语言,也会嵌套一些汇编,硬件平台是买的,处理器是80386,我们在硬件的不稳定上吃了很多亏,经常对软件修修补补来弥补硬件的缺陷(说这个只是想表达:一个做嵌入式的开发人员不懂硬件是很难立足的,一个做工控产品的公司没有人对硬件很精通也会江河日下,当然我的公司不是这样)。2000年时候我刚听说过linux(是的,知道的有点晚了),2004年的时候开始知道嵌入式这个概念(这还不算晚)。可是我当时没有这个环境去研究这些。
       2004年开始研究嵌入式系统。
       我的导师说,这个行当的方向就是将台式机的所有软件最终都移植到嵌入式里面去。
       也许大家都一样,我们正在研究一个项目。我们想出色的完成它,我们渴望展示自己的才华,我们希望表现自己以得到认可。是的,为此我们付出。多少个日日夜夜?还记得吗?您为调试一段代码而不能和女友一起逛街。是的,我们应该拿更多的薪水!!!可是,凭心自问,您到底有多少货?我们到底懂得多少?
就拿我来说吧,2005年7月,我接手了一个项目。从硬件平台、操作系统,GUI等等都需要自己去完成(当然,很多是移植),目前已经完成了硬件的制板和大部分的测试工作。并且已经在开发板上完成了linux系统的移植,开发出了简单的样机,其实就是一个简单的GUI和这个项目中的其中一个应用。尽管自己设计硬件平台,但那是参照了别人开发板的原理图,试想一个计算机出身的都能做出主板来,别人以为我多厉害呢,其实不是这样,不过的确,我也学到了很多东西,但一定不是你预想的那么多,硬件平台出来了,然后,就是选择操作系统,启动代码,文件系统,您看到了吗?除了移植以外还需要做什么(还不能用移植这个词,实际上,大部分,别人都移植好了,就等我们去搜索、下载,然后让它在我们的机器上也能用,真正的移植不是这样的,移植是要花费很多时间调试的)?当然,不可否认,我们从移植代码中也学到了不少东西,对系统更加了解了。在移植好系统之后,唯一剩下的就是我们的应用程序,看看我们的应用吧,GUI就用minigui吧,还有呢?是的,对于一个有嵌入式经验的人开发嵌入式应用,那就象在台式机上用MFC开发一个企业应用一样简单,只不过嵌入式系统这个开发环境对于新手来说的确有点困难。看看我们还能做些什么?是的,你会说,至少硬件驱动需要我们自己写吧。是的,也许吧,如果你的芯片不是最新的话,我想大多数开源软件里面你都能够找到可以用来移植的源代码。我们就剩下少量的驱动和类似在MFC上做一些小应用的事情了。
       很长时间以来,我们一直什么都想学,什么都想涉及,可是这么多年过去了,我们什么都不精通(当然,也许您可能不属于这类人)。看看我吧,这几年都学了些什么?linux操作系统(现在我认为自己只学到了个皮毛),文件系统,是的,我知道fat32,ext2,jffs2,romfs,ramdisk等等。可是仅仅限于了解,长时间以来我们太依赖于移植了,自己真正动手写得有质量的代码少的可怜。中国的程序员至今还没有对开源linux操作系统做出什么实质贡献是事实。我深刻的相信,自己动手做一个GUI要比移植这个移植那个所学的东西那绝对不是一个级别的!!!(只能这么表达了,因为没有办法去量化)
       GUI几乎是开发人机界面必须要用到的,只不过,如果我们的应用简单一点的话,通常我们的GUI也就很简单了,比如工控领域,主板(以前可没有SoC这个概念)的资源并没有现在嵌入式系统这么丰富,也就不太可能做比较复杂的GUI了。
        Minigui遵守的是GPL协议,GPL的free说得是自由,不是免费。我们需要在发布的产品中为minigui付出金钱。是的,这无可厚非,本人非常赞同GPL,因为一个完全没有商业元素的开源是没有前途的。可是如果我们的E计划开展顺利的话,我们将着手开发一个free&free(自由、免费)的开源GUI(你可能会说:那不是没有前途了吗?可是,作为一个特定的应用来说,GUI的代码不可能象minigui那么长,我们只需要写个GUI的核,外围的东西由您自己去扩展,就像uC/OS一样)。
好了,写得有点多了,参与这个egui和没有参与egui的朋友们,希望你们持续关注,大家的关注和支持是我们走得更远的动力!所有人都会从egui开源中受益!
 
 
                                                  e_gui

                                      200688 

 

>> 流程
 类似资料: