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




  

相关话题

  将 CPU 主频性能降到极低还能正常运行各种操作系统么?如果不能,会有哪些问题? 
  64位操作系统,进行64位数运算,比32位操作系统快吗? 
  如何将 C 语言发挥到极致? 
  64位操作系统,64位CPU,加SSD硬盘,是不是就可以省去内存,让CPU直接读取硬盘里的数据? 
  为什么要引入子进程,有线程不就行了吗? 
  为啥不尝试用电子笔取代鼠标? 
  CPU检测到中断信号时,怎么知道是发给哪个进程的? 
  计算机本科生花大量时间写编译器,操作系统是不是不务正业? 
  为何有那么多看衰鸿蒙系统的人? 
  x86 win32下的汇编指令集可认为是 cpu提供的指令集 + win32提供的指令集 吗? 

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





© 2025-06-18 - tinynew.org. All Rights Reserved.
© 2025-06-18 - tinynew.org. 保留所有权利