远程调用x86上的代码段

时间:2016-09-04 19:54:08

标签: c exception assembly x86 memory-segmentation

我正在尝试远程调用从具有平坦代码段,平坦数据段和环0特权级别的任务到具有相同权限级别在偏移零处的另一个代码段,但我确实得到GP错误。

我如何做远程呼叫:

__asm__ volatile ("lcall *%0" :: "m" (ptr));

其中ptr是以下数据的变量(far_ptr_t):

  typedef struct {

    void* offset;
    uint16_t sel;

} __attribute__((packed)) far_ptr_t;

当我调试它时,我看到它在调用指令上失败了,有什么理由我应该考虑以便知道为什么我会得到GP错误?

0 个答案:

没有答案