ttwu_queue
时间: 2023-11-21 21:56:51 浏览: 218
ttwu_queue是Linux内核中的一个函数,用于将唤醒的进程加入到CFS就绪队列中。具体来说,它会调用ttwu_do_activate函数将进程调度实体加入红黑树中,并检查唤醒的进程是否应该发生抢占。这个函数的定义如下:
```c
static void ttwu_queue(struct task_struct *p, int cpu) {
struct rq *rq = cpu_rq(cpu);
raw_spin_lock(&rq->lock);
ttwu_do_activate(rq, p, 0);
raw_spin_unlock(&rq->lock);
}
```
其中,参数p表示要唤醒的进程,参数cpu表示要将进程加入的CPU编号。函数首先获取对应CPU的运行队列rq,然后使用自旋锁保护运行队列,调用ttwu_do_activate函数将进程加入红黑树中,最后释放自旋锁。
阅读全文