Linux kernel 多核环境驱动程序

Linux kernel 多核环境驱动程序,linux-kernel,x86,linux-device-driver,x86-64,Linux Kernel,X86,Linux Device Driver,X86 64,每个核心是否具有相同的IDTR、GDTR和LDTR值?(我认为它们可能不同。)是否为特权指令同步了内核 我将尝试回答您的第一个问题:每个核心都有自己的IDTR、GDTR和LDTR寄存器,但它们可能是相同的值,也可能不是相同的值。在我的多核内核中,每个内核都有相同的内存空间,因此,我对所有内核使用相同的值。但是,我不确定它在其他内核中是否相同。我将尝试回答您的第一个问题:每个内核都有自己的IDTR、GDTR和LDTR寄存器,但它们可能是相同的值,也可能不是相同的值。在我的多核内核中,每个内核都有相

每个核心是否具有相同的IDTR、GDTR和LDTR值?(我认为它们可能不同。)是否为特权指令同步了内核

我将尝试回答您的第一个问题:每个核心都有自己的
IDTR
GDTR
LDTR
寄存器,但它们可能是相同的值,也可能不是相同的值。在我的多核内核中,每个内核都有相同的内存空间,因此,我对所有内核使用相同的值。但是,我不确定它在其他内核中是否相同。

我将尝试回答您的第一个问题:每个内核都有自己的
IDTR
GDTR
LDTR
寄存器,但它们可能是相同的值,也可能不是相同的值。在我的多核内核中,每个内核都有相同的内存空间,因此,我对所有内核使用相同的值。但是,我不确定它在其他内核中是否相同。

这是一个非常复杂的问题(基本上与问:多核操作系统是如何工作的?)。你介意把它分成几块吗?@Bjoern:是的,这是问题的关键。然而,我对用户空间不太在意,因为这些东西不需要同步。我想知道特定于硬件的关键指令(LGDT、LIDT或MSR更改)是如何执行的。@Bjoern:更新了问题。很抱歉,我对问题的所有部分都没有一致的答案。希望其他人能帮忙。这是一个非常复杂的问题(基本上和问:多核操作系统是如何工作的?)。你介意把它分成几块吗?@Bjoern:是的,这是问题的关键。然而,我对用户空间不太在意,因为这些东西不需要同步。我想知道特定于硬件的关键指令(LGDT、LIDT或MSR更改)是如何执行的。@Bjoern:更新了问题。很抱歉,我对问题的所有部分都没有一致的答案。希望其他人能帮忙。