是否可以更改%esp

时间:2016-05-24 21:45:57

标签: c multithreading assembly x86 operating-system

int main()
{
   int *stackArray = calloc(15, sizeof(int));

   asm volatile ( "movl %0, %%esp  \t\n"
       : 
       : "r" (stackArray)
       : );

   return 0;
}

我正在使用gcc -m32

进行编译

但是当我运行程序时,它给出了 segmentation fault (core dump) 我想上下文切换线程,但是当我试图将%esp指向其他数组时,我发现上面的错误。

0 个答案:

没有答案