zoukankan      html  css  js  c++  java
  • Visual Studio 2010 为何没有64位版本? 不及格的程序员

    作者:不及格的程序员-八神

    我在前一篇文章(VS2010是用什么编译的?)中简单描述了Visual Studio IDE 开发环境构建方式.但话题并未就此结束,此文继续将介绍时到今天(2010年)Visual Studio系列产品为何仍没有对应的x64位版本原因.

    64位的操作系统

    尽管x64运算离我们非常近了,我们新购置的个人电脑几呼全部配备64位CPU,但除了应用在服务器端,这些cpu很少运行在真正64位的系统中.

    也就是说目前经常被我们使用到的64位操作系统多是对服务器处理进行优化的,而对桌面应用64位的操作系统普及率并不高.

    不管怎样,即使你已经在日常工作中使用64位的操作系统,意味者你将拥有更多的困惑,首先是电脑硬件部分的驱动程序.

    另外即使你电脑内存拥有4G或8G内存,装上64位应用程序,也不见得会很快,因为64位的系统真的很耗内存.

    操作系统内每时每刻都会发生线程的上下文切换,然而由于需要保存相对于32位的64位cpu的更多寄存器内容,系统内核栈对内存也需要更多.

    x64位操作系统对调用约定进行的修定,增加了新的寄存器用于传递参数.

    编程语言

    前面提到x64位操作系统下对内存的需求将会增多,原因在于编写x64位应用程序本身就存在高昂的代价.

    比如如果你用C++/C#语言的话,本来在32位系统中我们的long型数据在内存占用32位空间,但是到64位系统中它们将增长一倍.内存指针全部将是64位.

    而且有时需要对内存中的数据进行优化要进行数据对齐,更加剧了内存的消耗.

    cpu缓存

    然而相对于目前主流应用程序的32位数据,64位的缓存数据,在cpu 1级,2级cache中的缓存数据将减半.所以最终用户需要购买具有更大缓存的cpu,同时也将掏更多的钱.

    结论

    集以上所言,x64位系统好像离我们又远了,怎么这么难呢?当初cpu由8位,到16位,再到32位有这么难吗? 我认为这只是暂时的相对.

    而且微软目前也没有完全准备好推出64位版的Visual Studio开发工具,至少里面还有许多算法是依赖32位cpu的特性作的,它们的开发人员也在想办法将它们迁移到新平台中.

    但情况也在随时间在转变,软件开发人员的日子也将越来越好过,就像.NET CLR4.0的调试模型的转变,是一点点的变化最终给你全新的体验,同时还保持着高度兼容性.

    Visual Studio是非常重量级产品,所以没有足够需求以及时间,64位版发行的还不是很迫切,必境目前VS2010可以很好的运行在x64位系统的开发与调试中,而且不会影响性能,何乐而不为呢...

    南来地,北往的,上班的,下岗的,走过路过不要错过!

    ======================个性签名=====================

    之前认为Apple 的iOS 设计的要比 Android 稳定,我错了吗?

    下载的许多客户端程序/游戏程序,经常会Crash,是程序写的不好(内存泄漏?刚启动也会吗?)还是iOS本身的不稳定!!!

    如果在Android手机中可以简单联接到ddms,就可以查看系统log,很容易看到程序为什么出错,在iPhone中如何得知呢?试试Organizer吧,分析一下Device logs,也许有用.

    我的开发工具

    对于博客园里的网友,不敢称为叫"程序员"的人,你们攻击性太强,看来你们是不会想到我的用意的.园子里有不少人都非常喜欢Jeffrey,是因为它的第一版 框架设计 CLR via C#.
    可是从第一版到现在的第三版,没有看到真正底层的东西,内容仅仅是比MSDN文档更丰富一些,可能是我的要求太高了吧.
    也就是因为它很多时候会接触到微软开发人员,会经常聊聊某些问题而已,而它又将这些问题反应到书中.也许它就像一个小记者.
    它的年龄大我们不多,我的孩子与它小儿子一般大,如果我能向它那样出入微软与它们开发人员长时间交流,不仅仅会牛成它这样.....
    可是微软的开发人员不会扔太多时间在它这儿的.所以它会整天追着这个,赶它那个..屁颠个不停吧...
    而它的另一版被称为好书的 Windows核心编程,更是没有什么深度可言,仅仅是将windows提供的api,以及内核功能再重申了一遍.
    这些书对晋及编程知识是有些贡献的,再说一遍我不是在匾低谁,说说想法而已.

  • 相关阅读:
    使用Supervisor守护Python进程
    Python 程序员经常犯的 10 个错误
    DNS的view加速
    转-Gitorious搭建步骤
    linux下curl的地址使用双引号引用的原因
    java poi ppt操作示例
    CentOS 6.3下Samba服务器的安装与配置
    Linux NFS服务器的安装与配置
    Linux下安装JDK和tomcat
    Oracle数据库合并行记录,WMSYS.WM_CONCAT 函數的用法
  • 原文地址:https://www.cnblogs.com/ioriwellings/p/1913983.html
Copyright © 2011-2022 走看看