Linux ISR入口点在哪里

时间:2012-02-11 05:35:25

标签: linux linux-kernel interrupt-handling

我正在尝试理解Linux内核中的系统调用接口和实现。我知道entry.S以及libc标题与实现之间的关系。我想知道的是内核中第一次收到的int 80h,即决定它实际上是80h中断的地方。有人能指点我的LXR链接吗?

1 个答案:

答案 0 :(得分:2)

CONFIG_X86_32

  1. arch/x86/kernel/entry_32.S:system_call(INT $ 0x80)
  2. arch/x86/kernel/entry_32.S:ia32_sysenter_target(SYSENTER)
  3. CONFIG_X86_64

    1. arch/x86/kernel/entry_64.S:system_call(SYSCALL,64位)
    2. CONFIG_X86_64 and CONFIG_IA32_EMULATION

      1. arch/x86/ia32/ia32entry.S:ia32_sysenter_target(SYSENTER)
      2. arch/x86/ia32/ia32entry.S:ia32_cstar_target(SYSCALL,32位)
      3. arch/x86/ia32/ia32entry.S:ia32_syscall(INT $ 0x80)