为什么Windows的兼容性这么强大,到底用了什么技术?
做过windows下的开发 , 用户态和内核态都做过 。 windows的兼容性确实相较于其他平台来说有点过于变态了 。 曾经网上找过一个97年的(好像)象棋软件 , 在最新的win10运行依然毫无问题(快二十年) 。 至于为何windows的兼容性如此变态 , 我想有以下几个原因:

文章图片
第一 , 微软被逼的:windows不仅仅是一个系统 , 而是一个生态 , 微软的windows只是这个生态里面的核心一环而已(掌握着标准的制定) , 在这个生态里面还有大量硬件厂商(包括cpu、主板、网卡……)和大量的应用厂商(杀软、办公、工业……);如果你是微软 , 要协调这么多的厂商 , 是你 , 你也会把兼容性做到极致 , 否则新系统一发布 , 问题一大堆 , 同时微软也深深的意识到 , 如果没有兼容 , 就会没有微软;这点可以参考牙膏厂的cpu , 蹩脚的32位为了兼容16位 , 然后amd的64位又要去兼容32位 , 很别扭的设计;

文章图片
前面说了主观原因 , 这里说一下windows是怎么做到的 , 我仅从api的角度来说(因为api是一个系统和另外一个系统沟通的标准语言) , windows的api(不管是内核层还是应用层)里面充斥了大量的基本不会用到的兼容性api , 而且windows本身api的设计也是有良好的兼容性考虑 , 比如很多struct里面第一个字段都是cbsize , 用来标识这个struct有多长 , 一旦将来进行字段扩展势必会改变cbsize , 那么api底层实现就可以通过这个字段来做不同的兼容性处理;

文章图片
【为什么Windows的兼容性这么强大,到底用了什么技术?】前面说了生态和api , 这里再说一下微软的文档 , 文档是链接海量开发者和系统核心的最重要的渠道 , 微软的文档是我看过最牛批的 , 基本上能涉及到开发的方方面面 , 还有大量的示例 , 我经常跟其他兄弟说的就是 , 如果你想搞好windows开发 , 就把msdn里面的文档好好读就可以了 , 别去找什么csdn(这里没有贬csdn哈)那些现成的代码 , 文档是官网一手的 , 而且做的非常好 , 何必舍本逐末呢;

文章图片
最后 , 我想说的就是 , 本人现在从事国产化替代相关的工作 , 现在网络充斥着大量为国产化鼓掌的言语 , 当然我本人是坚定支持核心技术国产化替代的 , 但不得不说 , 任重而道远 , 不管是国家相关主管单位还是我们的开发者 , 跟上国家战略是要的 , 但还是要沉下心来 , 好好设计
- 京东|裁员不忘膈应人,这家互联网大厂送的离职礼物恶心到我了!
- iPhone14|准大学生的数码装备推荐
- 有人觉得中暑就是热出来的,吃一些退烧药就好了,这种做法 蚂蚁庄园今日答案6月28日
- 浮甘瓜于清泉,沉朱李于寒水”描述的是什么场面 蚂蚁庄园今日答案6月28日
- 个头大的车厘子比小樱桃营养价值更高,对吗 蚂蚁新村6月28日答案最新
- 位于广东省阳江市的海陵岛自然资源丰富,景色优美,该岛没有 神奇海洋6月28日答案
- 哪种水果横着切开像星星的形状 蚂蚁庄园今日答案6月29日
- 为验证人类和黑猩猩,是否会产生新的后代,科学家找来5位姑娘!
- 喜马拉雅山出现的“雪人”是何生物?目击者:智商高、攻击性强
- 为什么科学家表示人类“灭绝”的可能性极低?这些理由你赞同吗?
