设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2939|回复: 8
打印 上一主题 下一主题

[胡扯] 调用64位dll

[复制链接]

Lv4.逐梦者

梦石
0
星屑
5039
在线时间
1780 小时
注册时间
2012-7-3
帖子
1799

开拓者

1
发表于 2017-12-16 23:51:01 | 显示全部楼层
2GB内存限制是32位程序的锅
微软在MSDN上有说明
https://msdn.microsoft.com/zh-cn ... PPError=-2147217396
所有 32 位应用程序都有 4 GB 的进程地址空间(32 位地址最多可以映射 4 GB 的内存)。对于 Microsoft Windows 操作系统,应用程序可以访问 2 GB 的进程地址空间,称为用户模式虚拟地址空间。应用程序拥有的所有线程都共享同一个用户模式虚拟地址空间。其余 2 GB 为操作系统保留(也称为内核模式地址空间)。所有操作系统版本(从 Windows 2000 Server 开始,包括 Windows Server 2003)都有一个 boot.ini 开关,可以为应用程序提供访问 3 GB 的进程地址空间的权限,从而将内核模式地址空间限定为 1 GB


大概就和DX9的2^n一样吧……

点评

嗯 就是 传统32位程序无法访问超过4G内存的原因是物理限制 这个限制在64位系统是不存在的 32位程序通过一些方法能变成64位 现在不行是微软限制了...  发表于 2017-12-17 00:00
就是说 64位系统下的32位程序和32位系统下的是不一样的 他们的执行方式还是有区别的 嗯  发表于 2017-12-16 23:53
不 64位系统下 32位程序其实是64位程序 是可以访问到高位内存的  发表于 2017-12-16 23:52
Project Ktr进行中:
   
------------------
SRPG开发之六-天气与地形互动
→→围观
→→→去Lofter围观
------------------
离经叛道的扯淡者/伪独立游戏爱好者/Decade Studio(?)/造轮子真TM开心呀
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-14 08:57

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表