DNF丨从32位到64位,可不是乘以2那么简单

2020年8月1日,是中国人民解放军建军93周年的好日子 。昨天晚上 , DNF也发生了一件意义重大的事情:64位客户端登录格兰之森体验服 。用了十多年的32位程序 , 终于要发生进化了 。32位到64位到底是什么意思呢?它又能解决什么问题呢?想要了解这些问题,我们可以先从32位的问题入手 。
不知道各位读者目前手边的电脑安装内存是多大,操作系统又是多少位的 。如果你安装的是32位的操作系统,那么很抱歉,它并不能运行64位程序,而且最大支持可以寻址的内存理论上,也不会超过4GB 。
【DNF丨从32位到64位,可不是乘以2那么简单】32位操作系统,实际上连4GB内存都无法全部使用
计算机最小存储单位
计算机最小的存储单位是什么?答案是bit,这里的Byte就是指我们本篇所讲的字节 。
内存地址与可用内存大小
在内存中,我们已经确定了以1个Byte代替1个bit来减轻数据访问工作量的方式 。但显而易见,这仍然不够 。内存中可以存储的Byte非常多,光是1GB就有2^30Byte,即约10亿个字节,几乎接近中国目前总人口的70% 。在10亿人当中找到1个人的难度可想而知 。
为了解决这个问题,我们引入内存地址的概念,即给这10亿个人每人都分配一间住房 。这样,在我们想找1个人的时候,只需要知道他住在那里(内存地址)就可以了,而不再需要一个人一个人的认过去 。现实生活中我们的地址表示方式是通过行政区域的概念,从大到小来实现的 , 比如“北京市北京市海淀区知春路甲48号” 。而在计算机中,则是以一串二进制数字来表示的 。
我们一直讲到的32位系统,实际上就是将上述表示内存地址的这一串数字的长度定位32 。每个数字均能填入一个数字,32个数字构成的每一个值都可以代表一个内存地址,每个内存地址上都存放了一个大小为1Byte的数据 。内存地址的长度,从根本上决定了理论上可使用的内存的最大大小 。显而易见的是,32个数字能够表示2^32个内存地址,即约4GB的数据量 。因此 , 我们电脑明明安装了4GB或以上的内存 , 但当使用32位操作系统时却并不能完全使用的道理,就源自于此处 。
如果将内存地址的长度扩大为64bit,即使用64位系统,理论上我们能调用的内存上限,则扩大到了2^64=256TB,这是32位系统允许的最大内存的40亿倍 。
DNF内存占用
作为一个2003年立项开发的游戏项目,DNF的编写必然是以32位环境为基础的,毕竟64位的架构 , 在2003年才刚刚被引入到个人计算机领域的主流 。实际上我们的电脑大规模的变为64位已经是到了Window7的后期,早已过了2010年了 。而2003年,我们的机器大多用的还是Windows XP甚至Windows 2000 。
由于32位软件的局限性 , DNF所能调用的最大内存当然也不超过4GB 。在游戏的聊天框内输入“//monitor”命令,我们就能够看到包括当前内存占用情况(Memory Usage)等一系列数据了 。
DNF内存占用情况
众所周知 , DNF这款游戏占用的内存空间是极大的 。刚登录游戏后,我们第一次释放技能、第一次进入副本时都可能会出现卡顿,这就是计算机将各类贴图数据读入到内存中造成的 。并且后续游戏过程中,只要不退出游戏,这些数据基本都不会被释放,所以游戏时间越久,我们的内存占用会越大,当超过了一定限度(比如4GB)时,游戏就会因为内存溢出而崩溃闪退了 。
所以,这次游戏从32位升级为64位,可谓一次史诗性的升级,理论上直接将内存调用最大上限从4GB变为了256TB,相当于取消了这个限制 。也就是说,我们以后再也不会遇到由于内存溢出而导致游戏崩溃的事情了 。实际上,它能从根本上解决我们长时间登录游戏不下线、使用多个角色切换进行游戏、频繁打团等经常导致游戏卡顿或闪退的问题 。
不过 , 正如开头我们所说,32位的操作系统是无法运行64位的程序的 。也就是说,如果你的电脑还在坚持使用32位系统,那么是时候对它进行更新了 。
亦或者,换个游戏?
以上就是朝夕生活(www.30zx.com)关于“DNF丨从32位到64位 , 可不是乘以2那么简单”的详细内容 , 希望对大家有所帮助!

猜你喜欢