我做过windows下的开发,用户态和内核态都有 。相比其他平台,windows的兼容性真的有点变态 。我曾经在网上找了一个97年(貌似)的象棋软件,但是它仍然运行在最新的win10中没有任何问题(近20年) 。至于为什么windows的兼容性这么变态,我觉得有以下几个原因:1 。被迫:windows不仅仅是一个系统,而是一个生态,微软的windows只是这个生态的核心(它控制着标准的制定) 。在这个生态中也有大量的硬件制造商(the 。如果你是微软,你要和那么多厂商协调,你也一样,会做到极致的兼容 。否则,新系统一发布,就会出现一大堆问题 。同时,微软深深意识到,如果没有兼容性,就没有微软 。这个可以参考牙膏厂的cpu 。蹩脚的32位设计是兼容16位的,然后amd的64位又要兼容32位,这是个很别扭的设计 。2.主观原因前面提到了 。以下是windows如何做到这一点 。从api的角度来看(因为api是一个系统与另一个系统进行通信的标准语言),windows API(无论是内核层还是应用层)充斥着大量基本不使用的兼容性API,windows API本身的设计就有很好的兼容性考虑 。例如,许多结构中的第一个字段是cbsize,它用于标识该结构的长度 。一旦将来字段扩展势必改变cbsize,底层api实现可以通过这个字段做不同的兼容性处理;3.我讲了生态学和api 。这里先说一下微软的文档,它是链接海量开发者和系统核心的最重要的渠道 。微软的文档是我见过最好的,基本上可以涉及到开发的方方面面 。也有很多例子 。我经常跟其他兄弟说的一句话是,想做好windows开发,看msdn里的文档就行了,不要找什么csdn的现成代码(这里没有贬义csdn) 。最后,我想说,我现在从事的是国产化替代相关的工作,现在网络上到处都是为国产化叫好的话 。当然,我是核心技术国产化替代的坚定支持者,但不得不说任重道远 。无论是国家相关主管部门,还是我们开发商,紧跟国家战略固然重要,但还是要沉下心来好好设计(自己想想[傻笑]) 。
推荐阅读
- 普通类征集 是什么,征集志愿的录取原则是什么
- 庆安集团有限公司,中航工业庆安集团有限公司有多少员工
- 合肥岗集育才苑什么时候建设,岗集镇最近在建项目
- 吴桥梁集村发生了什么,他用8年让小破村变身文明村
- 大家保险集团招聘信息,保险行业如何招聘
- 通化集安什么时候通高铁,从吉林通化到集安通车吗
- 淅川上集镇北岗这条路什么时间修,县委书记卢捍卫深入上集镇调研产业发展
- 敬业福为什么收集不到,为什么到现在还抽不到发
- 泛华保险服务集团,泛华保险主要是做什么跟平安保险有什么区别啊
- 威海双岛湾集团有限公司怎么样,简单聊聊威海双岛湾