我想知道在启动时,内核需要加载设备驱动程序以进行初始化,例如cpu时钟。但此时,内核尚未完全初始化。这样我们就可以在此时使用互斥锁(因为设备对象使用互斥锁作为保护机制)?什么时候可以使用互斥?
答案 0 :(得分:1)
为此,您需要对Linux内核初始化过程进行一瞥。
内核由单个进程启动,在单核上运行。
它检测可用的CPU数量和其他一些东西,并配置调度程序。然后它会触发调度程序。
任何驱动程序加载只会在此之后发生。
实际上,在调度程序启动后,驱动程序会被加载。
对Linux初始化主题的一些很好的见解: Linux inside.