gpt4 book ai didi

operating-system - 为什么 xv6 调度程序在每个循环开始时调用 sti()?

转载 作者:行者123 更新时间:2023-12-04 08:33:39 25 4
gpt4 key购买 nike

配套书说

The reason to enable interrupts periodically on an idling CPU is that there might be no RUNNABLE process because processes (e.g., the shell) are waiting for I/O; if the scheduler left interrupts disabled all the time, the I/O would never arrive.

但我认为我们只需要在外部 for 循环之前调用 sti() 一次,因为每次我们释放 ptable.lock 时,中断都会再次启用。

最佳答案

schedule() 调用时可能会禁用中断,在这种情况下释放 ptable 自旋锁不会重新启用它们。

关于operating-system - 为什么 xv6 调度程序在每个循环开始时调用 sti()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30101030/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com