百科问答小站 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:




  

相关话题

  用Android系统做出的游戏主机为何与XBOX、PS的游戏体验相去甚远? 
  x86/x64 的处理器和 32/64 位的系统有什么关系? 
  如何评价华为开发自主产权操作系统「鸿蒙」曝光? 
  为什么 Android 要采用 Binder 作为 IPC 机制? 
  如何实现一个安全的thread.stop的api? 
  如何评价联想杨元庆“相信全球化”、“一个公司没必要做所有的事情,联想并不打算做操作系统和芯片”的言论? 
  为什么显卡在内存中的映射是0b8000H? 
  如何看待长征七号发射用国产麒麟系统替代windows? 
  linux创建的硬链接为什么不占用磁盘空间? 
  俄罗斯为什么不怕美国在操作系统、芯片等领域的「制裁」? 

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





© 2025-03-25 - tinynew.org. All Rights Reserved.
© 2025-03-25 - tinynew.org. 保留所有权利