百科问答小站 logo
百科问答小站 font logo



为什么 Windows 上还没有普及 64 位的软件? 第1页

  

user avatar   yao-dong-27 网友的相关建议: 
      

我们来看看发布64位软件需要哪些条件:

鉴于大部分Windows应用还是用C++开发为主,尤其是GUI客户端,所以我们只谈谈C++。

1. 平台支持64位,Windows本身一直有64位版本,但是用户安装的普及率就呵呵了

2. 编译器支持64位,VC6不行,新版本肯定没问题

3. Framework支持64位,主流基本OK,但是众多第三方开源库就不保证了

4. 调试测试工具支持64位,性能测试,内存泄漏检测,自动化测试工具,崩溃分析,静态代码分析等等,这个涉及的东西太多,不保证都有64位支持

5. 第三方辅助外挂插件等,这些东西也是生态环境的一部分,没有也不行,它们的开发者大多数小公司或个人,未必有能力或意愿发布支持64位的版本

6. 程序员的能力,开发64位同时还要保证32位也是可用的,一份代码同时兼容32/64对程序员技能是有较高要求的。

再看看带来的好处:

1. 能用更大的内存,大约大于1.6GB,不过普通程序哪需要这么多,如果真的有这么多,十有八九是出bug了,内存泄漏。

2. 会有更好的性能,大约能提升10 - 20%左右,但是如果程序中依赖汇编性能优化,还需要开发64位汇编,否则性能可能会比32位还差。

总的来说,开发64位应用的外部条件成熟度只有一半多一点,开发过程中多少都会遇到一些64位特有的麻烦。所以绝大多数开发商对于发布64位版本都是没什么动力的。

64位普及度最高的平台是 iOS,从iPhone5s开始CPU都是64位的了,xcode编译同时生成32/64两份代码,无需工程师干预,AppStore强制要求支持64位,否则不让上架。所以整个iOS生态系统很快就切换到了64位,甚至有的应用已经不再发布32位版本了。iOS是个新系统,没有太多历史包袱,大部分应用代码规模非常小(相对于windows应用来说),容易移植。Apple只做个人消费市场,没有企业级客户,所以可以半强制用户升级软硬件,32位很快就被淘汰了。




  

相关话题

  如何看待「Office 2003 够用了,不用 Office 2013」之类的言论? 
  现代计算机之父明明是冯诺依曼,为什么提到计算机,大家首先想到的是图灵? 
  为何微信只使用了四天风云四号拍的地球作为启动界面? 
  微软会继续改善 Windows 10 的更新策略吗? 
  为什么Linux上的软件不需要“安装”& 为什么很多软件不做成“绿色软件”? 
  我想找个程序员男朋友,请问上哪去找好呢? 
  有什么在 Windows 上的界面简洁美观的笔记软件? 
  Windows 11 有哪些反人类的设计? 
  elasticsearch 部署在windows, 还是在linux? 
  武汉大学计算机学风真的很差吗? 

前一个讨论
如何向外行解释产品经理频繁更改需求为什么会令程序员烦恼?
下一个讨论
为什么清军靠屠杀汉人能够得天下,不是得民心者得天下吗?





© 2024-11-23 - tinynew.org. All Rights Reserved.
© 2024-11-23 - tinynew.org. 保留所有权利