跨平台技术和跨平台学习的深刻分析

2219 人浏览 | 时间: 2015-06-25 21:17:29 | 作者: codexia
    先对跨平台进行说明。我们现在有很多平台,在PC(电脑)端,主要有Windows、Linux(Unix)和IOS等。而手机端又有安卓、IOS等等。至于有多少平台,我们不用纠结。问题在于,不管是什么平台,都有共同点的。那就是,都有一个操作系统,而操作系统又是基础。
    操作系统的基础涉及到进程线程、进程线程的同步互斥、内存管理、处理器(CPU)调度等等问题,这是所有平台都必须有的技术。即使是单片机,也是有内存管理等等的。操作系统的基础是程序员必不可少要掌握的基础知识,如果没有这些基础知识,你就是浮云。
    现在来谈谈跨平台学习。首先来说说具体平台。具体平台就是实实在在的平台,比如Windows,前面说的操作系统的技术是具体平台的基础。说实在的,这些基础的操作系统的知识才真正是跨平台的技术。这个是让你能够真正切换平台开发的技术。而真正要开发效率很高的程序,必然是具体平台有关的,就是针对平台的,比如开发Windows程序,必然对Windows来说运行效率最高的。而如果你使用跨平台技术,那必然是使用别人做好的虚拟机之类的东西,这些东西在底层是针对具体平台的,比如Java的虚拟机。那么你的程序是运行在虚拟机之上的,要通过虚拟机来转换的,最后执行真正的机器指令。由此看来,一条语句,经过层层递进,才反映到具体系统的API,最后是机器指令。这样一来,执行效率极大降低,性能大大打折。如果你的程序要追求高性能,比如工业控制系统、动车系统等等,你会用跨平台技术实现吗?
    现在来分清两个概念。一个就是跨平台技术,一个就是跨平台学习。
    跨平台技术就是在具体平台上实现一个虚拟机,源代码生成的格式是中间的代码格式,就是虚拟机的格式。在执行时再转换成具体平台的指令执行的。之所以能够跨平台,就是你的程序编译后并没有生成机器代码,而是中间代码,中间代码是给虚拟机解释到具体平台执行的,因而可以达到跨平台。实际上,这个就给代码执行效率变低了。每次执行都要转换指令,而针对具体平台系统的程序直接是机器指令,直接运行,效率当然是最高的。使用跨平台技术,你
请微信扫码阅读。
为防止恶意爬虫,
已开启反爬机制,
理解哟~~~~
标注
评论
站内搜
百度搜
传送到手机
手机扫码,识别文字,完成传送x
加载中...
标注内容x
加载中...
添加标注x
收藏 0 点赞 0

相关阅读