操作系统:原理与实现
Loading...
This site is best viewed in a modern browser with JavaScript enabled.
Something went wrong while trying to load the full version of this site. Try hard-refreshing this page to fix the error.
gdb调试问题
laoqian12345
按19.2.3的练习2操作,使用where命令跟踪时出现"Backtrace stopped: not enough registers or memory available to unwind further",这是出错了吗?
输入n或ni继续往下追踪,出现类似"Thread 2 received signal SIGTRAP, Trace/breakpoint trap."之类的信息,执行 info thread发现有四个线程,CPU 0
3都显示在running,这个正常吗?不是单处理器模式吗?
jianbangyang
这是正常现象。
bootloader启动和kernel初始化一开始是由单个CPU核负责的,后面才启动多核模式。在bootloader的时候已经限制了只允许一个核执行初始化代码,其它核不断循环等待多核模式启动。