为什么windows兼容性那么强,到底用了什么技术

legs+之专栏 legs+之专栏 1020 人阅读 | 4 人回复 | 2021-12-18

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
一、Windows的发小,打不死的小强,VB/VBA最有发言权
众所周知,VB/VBA是真正的百姓编程工具,在推广计算机应用中,其前身(BASIC)更是立下过汗马功劳。不仅帮助比尔盖茨创立了微软(写BASIC解释器起家),更是将MSDOS和后来的Windows推上PC霸主之位(借助BASIC中的文件系统,把握住了与IBM合作的商机,借力QDOS熟知IBM PC的结构,收购QDOS更名为MSDOS成为PC的唯一供应商,10余年磨砺巩固了用户端的地位,秉承BASIC的VB1.0,让Windows3.0大获成功,持续护驾至再也没谁可以撼动的Windows2000的NT系统),并成为PC界的核心话语者。BASIC及其继任的VB/VBA,不仅见证了计算机硬、软件的发展,更见证了Windows的成长和繁荣。或许,可以从VB/VBA的角度来看待Windows的兼容问题。关于这段历史的细节,感兴趣的读者可以阅读《VB前传,从教学到游戏,再到系统,似乎每步都是精心设计》。

由于种种原因,VB的历史包袱不再适合互联网的新战场,不得不退居Office的背后成为护花使者。卑劣的相互中伤在激烈的商业竞争中成为常态,VB/VBA因为退出专业开发市场,给了其他竞争对手和相关利益方绝佳的借口。他们捕风捉影,无中生有,夸大事实,不仅将IDE的停更解释为官方抛弃,更将互联网的抱怨解释为新未来方案。感兴趣的读者,可以阅读《VB/VBA这个打不死的小强,还会坚持多久?》。

笔者是过来人,作为非计算机科班人士,互联网上那些自学编程的问题几乎都经历过。无论是技术细节层面,还是产业宏观层面,笔者仍然认为对于广大职场人士而言,桌面工具仍然是生产力的中流砥柱,而在桌面开发工具中VB/VBA仍然是广大非科班能拿得起的职场效率利器。笔者在《明比阅历浅,暗拼体力衰,指下讲武德,码上笑春风》中给出了详尽的理由,感兴趣的读者可以点开阅读。

尤其是当前,我国处于产业战略调整的关键时期,西方列强各种找茬,千方百计阻碍我中华的崛起。作为国人,更应该做好本职工作,通过调整自己的输出能力,来间接支持祖国的壮大,便成为一种义不容辞的责任。但是,坊间对VB/VBA这种便捷的工具进行大肆攻击(尤其是高校对非计算机科班开设VB课程),反倒让仅仅学过几十个课时(计算机扫盲课程)的人去学其他专业开发工具,这不是将人往沟里带吗?所以,笔者从硬件发展、系统发展和技术应用层面进行了科普,以正视听,正好相关内容也能很好回答该问题。

二、计算机的问题,凡事多问硬件
如果说JAVA的源码跨平台兼容,是靠不同平台的虚拟机来实现的,那么微软系统的兼容性则是靠X86特性来完成的。也就是说,微软优良的兼容特性,其实绝大部分是Intel的X86贡献的,微软只不过是个前端表演者,捞取了这样的名声而已。

笔者在《兼容真的会拖垮VB/VBA赖以生存的微软吗?》中,就旗帜鲜明地说,Windows的兼容表面上是Winet联盟在垄断地位上掘金的法宝,其实是半导体工业的一次最佳实践。

复杂指令集的发展,好比城镇的发展。功能的聚集产生方便,方便之上方显繁华奢侈。对繁华的追求,来自人的天性。等有人看到天性里的缺失,才会想到返璞归真,才有后面的精简指令集。

如今无论是技术阵营,还是生态阵营,两大派系已然肉眼可见,留给吃瓜群众的,大抵是谁会成为未来的主导。这个有点类似于语言之争了,意义不大。真正研究过不同语言的人,肯定知道相互借鉴,在行业里是最基本的前进动力,一个优秀的技术总是站在无数前人成果之上。这两大阵营,难道就不会相互借鉴吗?如果相互借鉴,那么二者在技术上就必然走向融合(同质),那什么是未来?当然是,既不复杂也不简单,既简单也复杂喽!

从市场角度,复杂指令集得益于先天占位优势,从PC到服务器几乎都占据着绝对统治地位,精简指令集要撼动复杂指令集的传统市场,就必须做到AMD动摇Intel的市场地位那样:具有明显的性能和价格优势。目前看来,还尚需时日。

笔者在《精简指令集(RISC)和复杂指令集(CISC)》和《精简指令集(RISC)和复杂指令集(CISC),未来会花落谁家?》中阐述了二者在发展中的辩证与统一,尤其是为何复杂指令集天生就具有兼容的特质。

三、到底用了什么技术?
如果说,X86在兼容上的居功至伟,不能让人信服,那或许《为何华为不推出类似于Windows上VB/VBA那样的平民开发工具?》能够说明些问题,正如网友回复所说,或许难度不亚于5G。

如果,精简指令的CPU尚在追赶的道路上,那同为X86的Win和MACOS为何有如此大的差异?或许《Windows的EXE为什么不能在MacOS上运行?「链接」》能给你答案。

如果上述离我们太远,那就看看细节吧,看看人民群众的好伙伴VB/VBA是怎么来解释兼容技术的吧。《探秘,64位Office VBA能否与VB6再续良缘?64位VB6能否继续躺赢?》、《VB/VBA(代表32位)如何继续在64位Win上抖机灵?》《VB/VBA(代表32位)如何继续在64位Win上抖机灵(二)? 》《VB当然能在64位Win上继续豪横!》,总之,《VB/VBA背靠的X86大树还是可靠的,所以他俩老不死了!》。

回答|共 4 个

nvideo 发表于 2021-12-18 17:58:57| 字数 47 | 显示全部楼层

nvideo 发表于 2021-12-18 17:59:47| 字数 54 | 显示全部楼层

nvideo 发表于 2021-12-18 18:00:39| 字数 49 | 显示全部楼层

nvideo 发表于 2021-12-18 18:02:01| 字数 54 | 显示全部楼层

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

热门推荐