TCB 位于 FreeBSD 的什么位置?

Where is TCB located on FreeBSD?

FreeBSD 上的内核线程控制块 (TCB) 位于何处? (线程中断后,上下文(包含%RIP/%EIP)保存在哪里?) 它在内核堆栈上还是在其他地方?

在 FreeBSD 中,进程和线程是非常相似,如 Linux,还是完全不同的抽象?

这是作业还是什么?

一般来说,如果您需要此信息,您知道在哪里可以找到它。

但是,如果这是针对学校的: 1)如果您实际查看源代码(包括 struct thread 定义),进程与线程的关系会立即显现出来 2)您可以从切换上下文的代码开始挖掘。有一个允许放弃执行的标准系统调用 - sys_yield,您可以将其用作起点。

所有这些都可以在几分钟内找到。