Linux kernel SMP系统的内核初始化
当我们在SMP系统上启动内核时,CPU0启动内核代码,在主内存中,当CPUx处于WFI状态时,特定于CPU0的缓存和MMU被初始化。当cpu_up(x)从CPU0发送时,每个CPUx都会被初始化,并调用辅助_启动,在这里,特定于CPUx的主存、缓存和MMU也会被初始化 现在我知道了一个缓存,对于不同的核心,它可以是不同的,但是对于不同的核心,我们也有主内存和MMU吗?我从来没有听说过。这里到底发生了什么,主内存和MMU是如何在CPU之间划分的?在SMP系统(或像今天的x86 CPU这样的NUMA系统)中,所有CPU都可以访问所有内存。因此,CPU0可以初始化所有内存 仍有空间进行特定于CPU的初始化:Linux kernel SMP系统的内核初始化,linux-kernel,boot,smp,Linux Kernel,Boot,Smp,当我们在SMP系统上启动内核时,CPU0启动内核代码,在主内存中,当CPUx处于WFI状态时,特定于CPU0的缓存和MMU被初始化。当cpu_up(x)从CPU0发送时,每个CPUx都会被初始化,并调用辅助_启动,在这里,特定于CPUx的主存、缓存和MMU也会被初始化 现在我知道了一个缓存,对于不同的核心,它可以是不同的,但是对于不同的核心,我们也有主内存和MMU吗?我从来没有听说过。这里到底发生了什么,主内存和MMU是如何在CPU之间划分的?在SMP系统(或像今天的x86 CPU这样的NUMA