GCC下,显示变量地址。 这地址和物理地址有什么联系吗? 前2个是定义的2变量的地址,在栈中;后2个是申请

的堆内存的地址,怎么只有7位啊?这地址都表示的什么啊
2024-12-23 13:55:11
推荐回答(1个)
回答1:

0x87bd008 = 0x087bd008 是32位的地址,这些地址都是虚拟地址,经过tlb(cpu的具体硬件,mmu只是泛泛的统称)将虚拟地址映射为物理地址,每个进程都有自己的地址空间,也就是说每个进程都会将虚拟地址映射为自己的物理地址(共享的只读页除外)。