我有一个任务,包括创建一个用户级线程包。我通读了这个帖子,它回答了我的很多问题。但是,我仍然对一些事情感到困惑......
首先,我无法理解如何在没有 pthread 库的情况下实际创建用户级线程......我有一个线程结构,它考虑了堆栈、堆栈指针、线程 ID 和线程状态。我猜这是一个简单的任务,但我无法理解线程是如何在当前进程中“创建”的。
我遇到的另一个问题涉及线程如何传递给调度程序。我实现了一个循环调度程序,以及一个每 100 毫秒处理一次中断以检查线程状态的信号处理程序。但是调度程序是如何知道线程的呢?
我觉得我错过了一个用户级线程的概念,这使我无法理解线程的创建和操作。
请帮帮我!提前致谢!