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



win和ubuntu的内存管理有什么不一样? 第1页

  

user avatar   _______ 网友的相关建议: 
      

关键字:ASLR


user avatar   bei-ji-85 网友的相关建议: 
      

1. 两个平台必然都用虚地址,不要看到低地址就以为一定是物理地址。

2. 两边结果不一样,因为你win平台编译出来的应该是32位的,地址必然小于4G,而Ubuntu那边gcc可能是64位的,所以才输出一个很大的地址,你换32位Ubuntu(不知道还能不能找到),肯定输出就不一样了。

3. 没有规范约定不同操作系统在分配栈上数据的时候一定要放在某个位置,实际上放哪都行,如果操作系统允许,放NULL上也没事。

----------------------------

原来题主问的是为什么Ubuntu两次栈上数据不同,看这里:

ASLR/DEP绕过技术概览(学习)

Win7下打开DEP:




  

相关话题

  为什么 Windows 不提供内存文件系统? 
  C++ 中,std::atomic 是真正的「原子」吗? 
  为什么总有人极力推荐使用命令行操作而非图形界面? 
  呜呜呜呜呜呜呜呜呜X﹏X? 
  macOS 和 MacBook 的缺点是什么? 
  如果未来国内普遍使用鸿蒙操作系统,中国人会不会面临难以接触国外软件(例如游戏)的问题? 
  如何看待微软 Build 2019 上发布的新 WSL2? 
  为什么 Windows 环境下不能删除被载入内存的磁盘文件? 
  进程被操作系统加载之后,磁盘上的二进制文件可以删掉吗?如果删掉对正在运行的进程有什么影响吗? 
  完全自主的制作一个可以商用的操作系统有多难? 

前一个讨论
青藏铁路西格段经历过哪些提速改造?现在的限速是多少?西格段在近期(五年内)能够开行和谐号动车组列车吗?
下一个讨论
如何看待公众号《“高铁之父刘志军”——美日操纵的伪爱国舆论》?





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