格格党

繁体版 简体版
格格党 > 重生八七之传奇 > 第一百六十七章 MinVM和MinIDE

第一百六十七章 MinVM和MinIDE

章节错误,点此举报(免注册),举报后维护人员会在两分钟内校正章节内容,请耐心等待,并刷新页面。

说到虚拟机,甚多人肯定会想到云计算,确实云计算中的虚拟服务器也是一种虚拟机。只是更早以前还有一种应用级的虚拟机,主要用于托管应用程序和操作系统的交互。比如后世的java、.net等都是有名的应用级虚拟机。

minvm也是一款应用级的虚拟机,它主要把一种字节码程序实时翻译成操作系统能识别的机器指令,用以代替应用程序直挥计算机硬件来执行机器指令。袁明这个c和java双料程序员不是吃素的,上辈子他参与过openjdk的开源项目,自己写jvm核心代码,也研究过整个jvm的项目代码。openjdk是后世javavm的开源版本,由java所有者sun公司在2006年推出,并负责维护。

初始的minvm不需要多大,因为它和历史上的javavm不一样,它不是为一个新的语言而定制的,所以无需重新做编译器,袁明利用gnu的gcc编译器源码改造后,去除内存管理和指针后,增加了堆栈管理作为原来的内存管理替代品。另外取消了gcc的词法和语法分析器,改为字节码分析器。这等于定制化gcc后,在外部套了一个解释器的壳子,所以代码量小了不是一点点。

主要的困难在于从未有过的内存垃圾回收器,这个在后世javavm中也是核心技术。幸好袁明看过这个垃圾回收器的源代码,所以他很容易就把这个内存垃圾回收器的设计给复制出来,甚至核心的代码都自己写了。

另一项困难不是技术难度,而是工作量大。minvm需要提供msdos、minos、win等主流操作系统的支持,所以适配开发的工作量非常大。袁明把minvm为每一种操作系统,发布一个分支版本,这些分支版本最终合成一个大的发布版本。用户可以根据自己的操作系统有选择的下载相应操作系统版本的minvm。所以这部分的开发人员最多,测试的复杂度也最高。

minvm这个项目主要由袁明自己负责,除了核心代码,他只负责给开发人员讲解设计,review他们的代码,具体的开发工作都是由项目小组自己完成。其实如果袁明自己写,也不是不可以,甚至能更快些完成。

袁明本质上还是一个程序员,这一点无论他赚多少钱,有了多大的事业,都未曾变过。每一行代码的敲击,会让他无比投入;每次调试,都会让他无比激动;每次抓虫子,都会让他彻夜难眠。自从他开始min软件平台项目,就百分之一万的投入了进去,就连陆倩都有被冷淡的感觉了,也许程序员们谈恋爱难的主要原因就在于此吧。幸好陆倩是个懂事的,她看得出袁明最近很忙,所以就没有过多打搅他。

考虑到锻炼项目组成员地能力,以及未来这个项目需要更多人参与进来,让minvm不断地扩充和升级。而且袁明也不想完全绑定在这个项目上,他还有很多大事情要做,没那么多时间和精力来关注具体地软件开发。所以他在完成了最初的设计,和一些核心代码之后,更多的是以指导那些开发人员为主,甚至会给他们开一些分享课程,让他们尽快提高能力。

这个时代还是有热血的,很多人充满了对知识、自由、爱情和高尚情操的向往,所以那是才会有北岛、芒克、三毛、王朔这些文学巨子,也有崔健、窦唯、黑豹这样热血摇滚。

在《十三邀》里,马东反问许知远:“你说现在的文化粗鄙了,那我们曾经精致过吗?”而这些人每一个都可以回答:“当然,我们曾经无比向往过精致、向往过自己思考的日子。”

这个时代的程序员们虽然处在的领域不同,但是他们一样有着自己的追求。所以也有着王永民、求伯君、武晓军这些第一代华夏程序员的奋斗史。而此时在复兴软件,整个公司上下对这个年轻的老板是非常尊敬的,不是因为他是老板,而是因为他的智慧、他的能力、他的无私,值得他们去学习、去崇拜!

所以团队的热情很高,公司里到处都是劈里啪啦的键盘敲击声,随处可见热烈讨论,甚至相互争吵的开发人员。办公空间里到处都是写满了字小黑板,由于此时没有白板和白板笔,袁明只能刚给他们提供黑板和粉笔。在黑板上写粉笔字,会搞得空间里到处都是粉尘,不过他们从来都不介意过。

也许他们不能完全想明白为什么要做minvm,但袁明给他们分享的那些知识,极大的开阔了他们的能力,以及他们的人生经历。袁明相信,只要给他们成长的机会,他们未来不会比王永民、求伯君、武晓军这些人来得差!甚至远远超越,因为他们所听、所见、所做的无一不是这个时代最先进的理念!

minide项目由武晓军亲自负责,由于最核心的编译器,袁明已经在minvm中顺带完成了,所以他们主要进攻的是图形界面的代码编辑、调试等功能。minide支持minb、minc和minc++三种开发语言,编译时不会直接生成机器码,而是生成minvm能识别的字节码,编译后的程序会在minvm上执行。

『加入书签,方便阅读』