Gdb gs的虚拟地址:0x14

Gdb gs的虚拟地址:0x14,gdb,stack,memory-segmentation,gdt,Gdb,Stack,Memory Segmentation,Gdt,如果我们用gcc编译一些C代码,我们通常会看到以下汇编结果 0x08048494 <+0>: push ebp 0x08048495 <+1>: mov ebp,esp 0x08048497 <+3>: and esp,0xfffffff0 0x0804849a <+6>: sub esp,0x130 0x080484a0 <+12>: mov eax,DWORD PTR [ebp+0xc

如果我们用gcc编译一些C代码,我们通常会看到以下汇编结果

0x08048494 <+0>:   push   ebp
0x08048495 <+1>:   mov    ebp,esp
0x08048497 <+3>:   and    esp,0xfffffff0
0x0804849a <+6>:   sub    esp,0x130
0x080484a0 <+12>:   mov    eax,DWORD PTR [ebp+0xc]
0x080484a3 <+15>:   mov    DWORD PTR [esp+0x1c],eax
0x080484a7 <+19>:   mov    eax,gs:0x14
0x08048494:推ebp
0x08048495:mov ebp,esp
0x08048497:和esp,0xFFFFF0
0x0804849a:子esp,0x130
0x080484a0:mov eax,DWORD PTR[ebp+0xc]
0x080484a3:mov DWORD PTR[esp+0x1c],eax
0x080484a7:mov eax,gs:0x14
这是一个简单的函数序言。 从+19行中,我们可以看到堆栈保护器的值为 从gs获得:0x14。 我的问题是,我能知道gdb中gs:0x14的实际虚拟地址吗? gs段选择器值表示与GDT的偏移量 但是,像gdb这样的用户级进程无法访问GDT信息。 如何使用gdb或其他调试器计算gs段的基址? 这不可能吗

先谢谢你